是否允许使用嵌套上下文路径,例如:
- "/"用于 webapp X
- "/y"表示 webapp Y?
我自己之前从未使用过该布局,但我需要帮助某人部署使用该布局的现有系统。到目前为止它确实有效,但突然,它不再有效了:
- Webapp X 仍然有效。
- webapp Y 的static 页面仍然有效 - 但来自 webapp Y 的 servlet 不再有效。
如果我们将 webapp X 部署在“/x”而不是“/”下,那么两个 webapp 都能完美运行!
我想知道的第一件事是:上面提到的布局是否完全允许,或者这真的是一个非常不稳定的设置,取决于一定程度的运气吗? (如果我调用 www.example.com/y/someServlet
,tomcat 会看哪里?我担心它可能会看 webappX 的 web.xml?)
最佳答案
问题是由以下事实引起的,即 webapp X 被部署了两次:一次由指定的 <context>
部署。元素(将上下文路径设置为“/”),第二次由自动部署。
将 webapp X 从 autodeploy (appBase) 文件夹中移出,移到另一个文件夹中解决了这个问题。另见 http://tomcat.apache.org/tomcat-7.0-doc/config/context.html#Naming
关于JavaEE 网络应用程序 (Tomcat) 和嵌套上下文路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6827754/