java – Spring MVC上下文路径集在哪里?

前端之家收集整理的这篇文章主要介绍了java – Spring MVC上下文路径集在哪里?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我不确定如何设置上下文路径.
当我在autodeploy中重命名tomcat中的.war文件时,网页会按预期转到localhost:8080 / newDirectory,但是出于某种原因,在基于Spring页面调用pageContext.request.contextPath时,它仍会返回旧的上下文路径.

我试图通过设置覆盖上下文路径:

在server.xml中,但它不起作用.

我的问题是,Spring从哪里读取它的上下文路径?我用了Maven,我确实看到了

在pom.xml中,这是否意味着我需要将artifactId重命名为newDirectory?

我还尝试添加< context path =“/ newDirectory”...>在/Meta-INF/context.xml中(由于我的server.xml更改,现在我知道它将被忽略).

提前感谢您的回答.

最佳答案
每个PageRequest都将获取当前的HttpServletRequest对象并获取当前请求的上下文路径并附加您的.jsp(即使在更改时访问此资源的上下文路径,它也会起作用).

例如,

如果你有一个war文件作为MyCompany.war并且有一个带有${pageContext.request.contextPath} /MyJspPage.jsp的页面.

Then your context path is http://abc/MyCompany and it works as http://abc/MyCompany/MyJspPage.jsp.

假设您将war文件更改为OurCompany.war,

then your context path changes to http://abc/OurCompany and Jsp will work as http://abc/OurCompany/MyJspPage.jsp.

这意味着上下文路径将自动更改为应用程序的名称(War文件名),而不会发生任何更改.

在您的情况下,在使用newDirectory重命名war文件名后,您的Web服务器将部署newDirectory应用程序,但Web服务器中仍然存在newDirectory应用程序.我认为您应该从webapp删除旧应用程序,然后通过重新加载newDirectory应用程序进行检查.

猜你在找的Spring相关文章