質問: javaで動的webプロジェクトをeclipseで作成しています。 今回作成したプロジェクトで最初に実行するのが、 「init.java」の「doGet()」です。 現在は、ワークスペースからinit.javaを「右クリック」→「サーバーで実行」で起動しています。 それをプロジェクトを実行した際に自動でinit.javaから起動できるようにしたいと考えています。 ■やりたいこと プロジェクト「サーバーで実行」→ http://localhost:8080/app/ → 404 NotFound ↑これを プロジェクト「サーバーで実行」→ http://localhost:8080/app/init/ として起動したいです。 ■ためしたこと コンテキストルートをapp/からapp/init/に変更、サーバーをクリーン →プロジェクト「サーバーで実行」→ http://localhost:8080/app/init/ → 404 NotFound URLは変わりましたがうまく起動できませんでした。 この場合にinit.javaを実行すると http://localhost:8080/app/init/init/ となり起動できます。 わかりにくい文章で申し訳ありませんが、何卒回答宜しくお願い致します。
回答: アプリケーションごとのルート(/)アクセス時は、実装されているWebアプリケーション内にルート(/)でマッピング定義されているサーブレットやJSPがある場合はそちらが、もしない場合はWebアプリケーション内のweb.xml(このファイルがない場合は、Tomcatのweb.xml)のwelcome-file-listに記載されているhtmlやjspが起動します。 なので一番簡単な方法は、index.jspにて、jsp:redirect を記述し、/init へリダイレクトすることです。