0

私の構造は

  • Webコンテンツ
    • メタINF
    • WEB-INF
      • jsp
        • index.jsp
    • web.xml

そして、web.xmlファイルは可能な限りシンプルです

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app
    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
    "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">

<web-app>
  <display-name>servlets</display-name>
  <welcome-file-list>
    <welcome-file>WEB-INF/jsp/index.jsp</welcome-file>
  </welcome-file-list>
</web-app>

しかし、ブラウザで Eclipse を使用して実行すると が表示されます404 errorが、index.jsp をルート ディレクトリに移動すると正しく動作します。

編集:変更後

jsp

--index.jsp

メタINF

WEB-INF

--web.xml

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app
    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
    "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">

<web-app>
  <display-name>servlets</display-name>
  <welcome-file-list>
    <welcome-file>jsp/index.jsp</welcome-file>
  </welcome-file-list>
</web-app>

解決

コンパイル中に Tomcat サーバーが再起動していないことがわかりました。サーブレットをコンパイルするたびにTomcatが再起動すると、動作します。

お待ちいただいてどうもありがとうございます

4

4 に答える 4

3

WEB-INF 内のファイルに直接アクセスすることはできません。これは、あなたではなくサーブレットによってのみ可能です。

このディレクトリ (WEB-INF) には、アプリケーションのドキュメント ルートにない、アプリケーションに関連するすべてのリソースが含まれています。これは、Web アプリケーションのデプロイメント記述子がある場所です。WEB-INF ディレクトリは公開ドキュメントの一部ではないことに注意してください。このディレクトリに含まれるファイルは、クライアントに直接提供できません。

于 2012-11-08T09:02:44.030 に答える
2

web.xmlすぐ内側にある必要がありますWEB-INF(のサブディレクトリにもありませんWEB-INF

また、これを変更してみてください

<welcome-file>WEB-INF/jsp/index.jsp</welcome-file>

<welcome-file>jsp/index.jsp</welcome-file>

アップデート:

新しいディレクトリ構造に従って、<welcome-file>タグは次のようになります。

<welcome-file>jsp/index.jsp</welcome-file>

于 2012-11-08T08:57:52.013 に答える
0

404 エラーは、URL が適切でない場合に発生します。

URLが正しいか確認してください。ディレクトリ構造に基づいて、URL は次のようになります: localhost:8080/jsp/index.jsp

また、web.xml が WEB-INF ディレクトリ内にあることを確認してください。

于 2012-11-08T09:00:18.347 に答える
0

まずは

web.xml内側にある必要がありますweb-inf

第二に

へのパスindex.jspが間違っていますweb.xml

ディレクトリ構造によると、パスを使用している理由index.jspは内部にありますwebcontent\jsp\indiex.jspweb-inf\jsp\index.jsp

currentディレクトリ構造に従って、次のようにする必要があります.\jsp\indiex.jsp

UPDATE : OP がディレクトリ構造を更新しました。

jsps を WEB-INF に配置しないでください。jsps を webcontent と に配置する必要がありweb.xmlますWEB-INF。ディレクトリ構造を再編成します。web.xml内部web-infjspフォルダーを内部に配置してから、jspを歓迎するパスをwebcontent内部に配置しますweb.xmljsp\index.jsp

于 2012-11-08T09:07:21.063 に答える