Spring MVC base / root URL与war name相同

时间:2015-07-01 18:15:04

标签: java spring spring-mvc url

我使用带有xml配置的Spring MVC创建了一个基本的休息服务。我的应用名称是: myservice 。当我从中创造一场战争时,我收到一场名为 myervice-1.0.0 的战争。总之,我必须通过 http://localhost:8080/myservice-1.0.0/resource 访问我的应用程序。我喜欢像项目名称一样只是' myservice'我能做什么?非常感谢。我使用的是tomcat + gradle。     的的web.xml:

<servlet>
<servlet-name>webappservice</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
<servlet-name>webappservice</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
</web-app>   

2 个答案:

答案 0 :(得分:0)

您可以重命名战争名称。如果您使用maven作为构建工具。然后你可以使用下面的解决方案。

 <build>
      <finalName>myservice</finalName>
     . . .
    </build>

如果您可以共享一些配置详细信息,例如pom.xml,web.xml等,那就更好了。

答案 1 :(得分:0)

如果双击STS中的服务器定义,您将看到“模块”选项卡。从那里,您可以编辑“路径”并将其设置为您想要的任何内容。当您选择“在服务器上运行”时,STS必须定义上下文路径,并将其默认为默认包的最后一个元素。如果我没记错的话,默认情况下Tomcat使用zipped或爆炸.war的文件名。在任何一种情况下,你都可以超越它。

see more about it here