2011-08-07 39 views
2

我有一个运行在Tomcat 7上的Java应用程序。我希望我的应用程序在URL中拥有它的名称。例如:在Tomcat上丢失应用程序名称的URL 7

http://localhost:8080/MyApp 

我构建WAR,部署并正确访问应用程序。但是,我的所有<a><form>标记都不会将应用程序名称添加到URL中。也就是说,做类似的事情:

<a href="/myPage">Click Me</a> 

不起作用。链路结束这样的:的

http://localhost:8080/myPage 

代替

http://localhost:8080/MyApp/myPage 

有什么办法来配置Tomcat应用程序名称添加到链接等?如前所述,我不希望将URL的应用程序名称剥离(即将其作为根目录)。我知道有一些解决方法(如手动将上下文路径添加到URL上,使用<c:url>等,但我想知道是否可以告诉Tomcat做到这一点。我认为这是要问的地方,因为请求不是'牛逼让我的应用程序。如果它的事项,我使用Spring MVC和Maven的。

回答

4

我知道有一些变通(如手动添加上下文路径到URL,使用<c:url>

这些都不是解决方法,这些都是解决方案,你只是犯了一个错误,总是假设webapp运行在域根上。解决方案-imo-使用HTML <base>。另见here

但我想知道是否可以告诉Tomcat这样做。我想这是要问的地方,因为请求没有得到我的申请。

不是,这不是servletcontainer的责任。 JspServletDefaultServlet都没有这样做。这是webapp自己的责任(并且尽可能使用serveradmin)。

+0

好的。看起来似乎没有办法。我想我会坚持使用标签(对我来说一直很奇怪)。谢谢您的帮助。 –

相关问题