web-dev-qa-db-ja.com

HTTPステータス404-Tomcatを使用したEclipseで

私はEclipseを使用してローカルのTomcatでサーブレットを実行しようとしています。

しかし、私はこのエラーを受け取り続け、何を別の方法で行うべきかわかりません。

実際にここに記録しました: http://www.screenr.com/ZyD8

どうもありがとう!

また、web.xmlを次のように変更しました。

      <?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:web="http://Java.Sun.com/xml/ns/javaee/web-app_2_5.xsd"
    id="WebApp_ID"
    version="3.0"
    xmlns="http://Java.Sun.com/xml/ns/javaee"
    xsi:schemaLocation="http://Java.Sun.com/xml/ns/javaee http://Java.Sun.com/xml/ns/javaee/web-app_3_0.xsd" >

    <display-name>
TEST3
    </display-name>

    <welcome-file-list>

        <welcome-file>
TEST3
        </welcome-file>
    </welcome-file-list>

    <servlet>

        <servlet-name>
helloServlet
        </servlet-name>

        <servlet-class>
HelloServlet
        </servlet-class>
    </servlet>

    <servlet-mapping>

        <servlet-name>
helloServlet
        </servlet-name>

        <url-pattern>
/hello
        </url-pattern>
    </servlet-mapping>

</web-app>
10
user387184

私はあなたのリンクを見ました。

いつでも、動的Webプロジェクトを実行します。デフォルトでは、Servletコンテナ(この場合はTomcat)は、ようこそリストで指定されたファイルを検索します。 web.xmlを確認してください。次のようなエントリが含まれているはずです

<welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>

上記のリストのいずれからもファイルを作成していません。だから、実行

http://localhost:8080/TEST2は404エラーを返します。

むしろ実行:http://localhost:8080/TEST2/HelloSerlvetは、作成したサーブレットを呼び出します。

編集:Eclipseの[プロジェクト]メニューをチェックし、[自動的にビルド]がオンになっていること、およびサーブレットコンテナーが実行されていることを確認します(http://localhost:8080)。

編集2:プロジェクトを右クリック->プロパティ、Javaビルドパス->ソースタブ->デフォルトの出力フォルダを変更。/WEB-INF/classesの下に/WebContentを作成します( Eclipseのデフォルト)

21
Hardik Mishra

これは、Hardik Mishraからの回答にいくつかのハイライトを付けたものに基づいています。1.ファイルエクスプローラーから(Eclipseからではなく)、/ WebContentの下に「/ WEB-INF/classes」を手動で作成します2.プロジェクトを右クリック->プロパティ、選択Javaビルドパス->ソースタブ->上記で作成したフォルダにデフォルトの出力フォルダを変更します。3. Eclipseからではなく、ファイルエクスプローラに移動します。 "には、クラスフォルダーを表示しないフィルターが含まれている可能性があります。このディレクトリの下にコンパイルされた.classファイルが表示されます。

もう一度テストしてみてください。機能しない場合は、Eclipseを1度再起動すると機能します。

7
Eric Q

私はかなり前からこれらのタイプの問題を見てきましたが、一部で機能し、残りの問題が依然として同じ問題に直面する複数のソリューションを見てきました。

簡単な解決策の1つは、.Java/.jsp/etc。にトラバースし、右クリックして[サーバーから実行]オプションを選択します。

このソリューションは、シンプルでありながら効果的な実行方法であることがわかりました。

パスJava Resource-> src->-> example.Java->右クリック->別のユーザーとして実行->サーバーで実行。

この後も、ポート8005が利用できないなどのいくつかの問題に直面する可能性があります。以下のリンクに従って、現在のApache設定を消去し、同じ設定を再設定してください。

Tomcat-HTTPステータス404

デプロイメントエラー:Tomcatの起動に失敗しました。サーバーポート8080はすでに使用されています

この調査結果がお役に立てば幸いです。

4
Bharath

通常、web.xmlファイルを変更する場合は、Tomcatを「クリーン」にする必要があります。 EclipseでTomcatを右クリックしてクリーンアップします。プロジェクトについても同じようにします。また、Tomcatを停止し、Tomcatからアプリを削除(Tomcatの下でアプリを右クリックして削除)してから、再び追加することもできます。 Tomcatを再起動します。

0
Steven