如何使用MAVEN导入WSDL文件以开发SOAP Web服务?

时间:2016-11-05 08:09:13

标签: web-services maven java-ee soap wsdl

我是SOAP webservices的新手。我有一个WSDL文件和一个XSD文件。我必须使用maven创建webservice及其相应的webservice客户端。

我在eclipse中导入了WSDL文件,它自动生成所有类并运行webservice。但我想用maven项目做同样的事情。

请建议我如何实现这一目标?

1 个答案:

答案 0 :(得分:0)

您可以使用cxf-apache-maven。 只需使用依赖项设置pom.xml文件即可。例如:

<dependencies>
    <dependency>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-rt-transports-http</artifactId>
        <version>3.1.6</version>
    </dependency>

    <dependency>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-rt-frontend-jaxws</artifactId>
        <version>3.1.6</version>
    </dependency>
</dependencies>

<build>
  <plugins>
    <plugin>
      <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-codegen-plugin</artifactId>
        <version>3.1.6</version>

  <executions>
    <execution>
      <id>ID NAME</id>
      <phase>generate-sources</phase>
      <configuration>
          <sourceRoot>${project.build.directory}/generated/cxf</sourceRoot>
          <wsdlOptions>
            <wsdlOption>
                <wsdl>WSDL FILE LOCATION/URL</wsdl>
                <extraargs>
                <extraarg>-p</extraarg>
                <extraarg> DESTINATION PACKAGE </extraarg>
                </extraargs>
              </wsdlOption>
           </wsdlOptions>
         </configuration>
         <goals>
            <goal>wsdl2java</goal>
          </goals>
        </execution>
      </executions>
    </plugin>
  </plugins>
</build>

您可以在apache文档中看到另一个示例:http://cxf.apache.org/docs/maven-cxf-codegen-plugin-wsdl-to-java.html

另一种选择是使用jaxws-maven-plugin,类似。 为这两者找到更好的选择。