【发布时间】:2010-07-29 21:51:14
【问题描述】:
我有一个 JSP 应用,它在 server/a/b 下,WEB-INF 在 server/a/b/WEB-INF 下,不在 app-root 目录下。
现在我在访问 server/a/b/index.jsp 时收到错误消息,指出包 P 不存在。实际上这个包是存在的,它位于 server/a/b/WEP-INF/classes/P/
我想知道这个错误是否是由于not-at-root-directory?
谢谢!
【问题讨论】:
我有一个 JSP 应用,它在 server/a/b 下,WEB-INF 在 server/a/b/WEB-INF 下,不在 app-root 目录下。
现在我在访问 server/a/b/index.jsp 时收到错误消息,指出包 P 不存在。实际上这个包是存在的,它位于 server/a/b/WEP-INF/classes/P/
我想知道这个错误是否是由于not-at-root-directory?
谢谢!
【问题讨论】:
您的server/a/b 示例过于含糊,无法合理回答问题。
至少,它应该是 webapplication 上下文文件夹的直接子目录。在 Tomcat 中,所有 Web 应用程序都将放置在其自己的文件夹中的 /tomcat/webapps 文件夹中,其中 /tomcat 是 Tomcat 安装文件夹。安装 Tomcat 时,/webapps 文件夹应该已经存在。每个部署的 webapp 都应该放在自己的文件夹 /webappname 中,该文件夹包含 http://hostname:port/webappname 可以访问的 web 应用程序上下文。
所以,/WEB-INF 文件夹应该在 /tomcat/webapps/webappname/WEB-INF 中。其他任何地方都没有。它会与Servlet API specification 相矛盾。
【讨论】: