我有一个用Java实现的Web服务项目(SOAP)作为Maven项目。我想创建一个.war
来部署到Tomcat。
要创建.war
,我总是使用Eclipse Juno界面(右键单击 - >导出 - > WAR文件)。 Eclipse配置了Tomcat 7和Axis 1.5.6。使用此方法我部署了创建的.war
文件,一切都很好!该应用程序的主页面如下所示:
[![Web服务主页] [1]] [1]
在这个页面中,我可以探索服务,方法和WSDL文件。这就是我所说的完整.war
文件。
现在,我将我的Web服务迁移到Maven,以便与Jenkins一起使用,以自动化部署,测试等。
我试了整整两天创建一个pom.xml
,它将创建用Eclipse创建的相同.war
文件,但我没有成功。当我在Tomcat上部署使用.war
创建的pom.xml
并访问localhost:8080/SOAPExample/
时,它会显示错误404 。 .war
的Maven构建和Tomcat部署成功。我知道服务页面没有创建,但Web服务已成功部署。
我使用了互联网上提供的一些教程,如下所示,但在所有情况下,Maven创建的.war
都不完整:
https://www.mkyong.com/maven/how-to-deploy-maven-based-war-file-to-tomcat/
看起来我错过了pom.xml
中的某些依赖配置,或类似的东西。这是我的pom.xml
。我也认为它缺少一些axis2配置。
<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>com.test</groupId>
<artifactId>SOAPExample</artifactId>
<version>0.0.1</version>
<packaging>war</packaging>
<name>SOAPExample</name>
<build>
<sourceDirectory>src</sourceDirectory>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>2.4</version>
<configuration>
<warSourceDirectory>WebContent</warSourceDirectory>
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
</dependency>
</dependencies>
这是我的项目结构:
[[![项目文件夹结构]] [2] [2]]
互联网上没有教程说明如何配置pom.xml
来创建完整 .war
文件。一些好心灵可以帮助我吗?