我目前正在使用 Spring Roo 构建一个相当简单的 webapp。然而,Spring 应用程序似乎默认部署到“/{app name}”,而不是“/”作为顶级目录。也就是说,控制器由“/{app name}/person”映射,而不仅仅是“/person”。经过相当多的探索之后,我看不出这将在哪里解决。它是某个地方的设置吗?
问问题
724 次
2 回答
2
基本路径由应用程序服务器定义,而不是应用程序本身。在 pom.xml 中,覆盖以下插件:
maven-war-plugin - mvn 包,mvn tomcat:run-war
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.2</version>
<configuration>
<warName>ROOT</warName>
<!-- exclude test files from war package -->
<packagingExcludes>src/test/**</packagingExcludes>
</configuration>
</plugin>
tomcat-maven-plugin - mvn tomcat:run
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat-maven-plugin</artifactId>
<version>1.1</version>
<configuration>
<path>/</path>
</configuration>
</plugin>
org.mortbay.jetty - mvn 码头:运行
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>8.0.4.v20111024</version>
<configuration>
<webAppConfig>
<contextPath>/</contextPath>
</webAppConfig>
</configuration>
</plugin>
于 2012-09-02T08:37:26.933 回答
0
假设您的 Spring Roo 应用程序在 Apache Tomcat 上运行,您可以做的是配置 Tomcat Root 上下文。
您可以通过以下方式执行此操作。
- 在 conf/Catalina/localhost 中定义一个 ROOT.xml 上下文文件
- 将您的 webapp WAR 命名为“ROOT.war”或包含文件夹“ROOT”</li>
更多信息可以在以下链接中找到。
http://benhutchison.wordpress.com/2008/07/30/how-to-configure-tomcat-root-context/
干杯!
于 2012-08-26T17:35:58.557 回答