我根据自己的知识设置了一个Spring MVC项目,并且我遇到了一些冲击。我有一个欢迎文件和一个Web服务设置,他们工作得非常好。但是,而不是localhost:8080 / ZFGC /点击欢迎文件,我喜欢localhost:8080 /来点击它。从那里,我希望能够以类似的方式调用我的Web服务,即没有ZFGC /。我还没能找到一个能够正确解释这个问题的教程。有人可以启发我吗?
的web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
<display-name>zfgc</display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>zfgc</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>zfgc</servlet-name>
<url-pattern>/welcome.jsp</url-pattern>
<url-pattern>/welcome.html</url-pattern>
<url-pattern>/index.htm</url-pattern>
<url-pattern>/</url-pattern>
</servlet-mapping>
</web-app>
的pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>ZFGC</groupId>
<artifactId>ZFGC</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<name>ZFGC</name>
<description>Zelda Fan Game Central</description>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.1.1.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>4.1.1.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>4.1.1.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>4.1.1.RELEASE</version>
</dependency>
<dependency>
<groupId>taglibs</groupId>
<artifactId>standard</artifactId>
<version>1.1.2</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.1.3</version>
</dependency>
</dependencies>
<build>
<sourceDirectory>src</sourceDirectory>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>2.4</version>
<configuration>
<warSourceDirectory>WebContent</warSourceDirectory>
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
</plugin>
</plugins>
</build>
</project>
zfgc-servlet.xml中
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-4.0.xsd">
<context:component-scan base-package="com.zfgc.forum.controller" />
<bean id="viewResolver"
class="org.springframework.web.servlet.view.UrlBasedViewResolver">
<property name="viewClass"
value="org.springframework.web.servlet.view.JstlView" />
<property name="prefix" value="/WEB-INF/jsp/" />
<property name="suffix" value=".jsp" />
</bean>
</beans>
答案 0 :(得分:1)
要使用http://localhost:8080点击您的应用,您唯一需要做的就是将您的Web应用程序部署为Application Server中的ROOT应用程序。
这主要取决于命名WAR文件ROOT.war
在Maven中,您可以使用以下方式轻松完成:
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<warName>ROOT</warName>
<outputDirectory>war</outputDirectory>
</configuration>
</plugin>
</plugins>
答案 1 :(得分:1)
由于你在eclipse中运行应用程序(通过tomcat),它只是一步配置。
按照步骤操作。 (确保在执行此操作之前停止tomcat)
1)您将在eclipse中显示的项目列表中找到“服务器”文件夹。
2)展开服务器 - &gt; Tomcat v8.0
3)您将看到配置文件列表。打开 server.xml
4)Scoll到底部。你会看到一条像这样的线,<Context docBase="ZFGC" path="/ZFGC" reloadable="true" source="org.eclipse.jst.jee.server:ZFGC"/>
5)现在只需将该行更改为此
<Context docBase="ZFGC" path="/" reloadable="true" source="org.eclipse.jst.jee.server:ZFGC"/>
并保存更改。
准确地说,path="/ZFGC"
已更改为path="/"
。而已。现在启动您的tomcat,您可以在http://localhost:8080中访问您的应用程序。