如何从WSDL创建Web服务并在其中包含多个服务?

时间:2013-01-22 17:18:12

标签: java eclipse web-services soap cxf

我在使用两个服务从WSDL创建Web服务时遇到了麻烦。它来自Eclipse IDE,实现了Apache CXF。

当我在WSDL中获得一个服务时,我能够从WSDL创建Web服务和客户端。

Eclipse只提供一个选项来在WSDL2Java配置时创建服务名称。

请建议我,如何继续前进?

2 个答案:

答案 0 :(得分:0)

删除第二项服务,然后生成客户端,然后删除第一项服务并恢复第二项服务,然后再次生成客户端。

在运行时,您需要传递服务端点

答案 1 :(得分:0)

我建议您使用的最佳和最简单的方法是通过maven插件生成服务。此插件也称为wsdl2java,可以正常工作。我也尝试过一些时候使用eclipse从java类中的WSDL创建服务,但它无法正常工作。使用maven中的wsdl2java插件,您可以更深入地控制创建服务类的过程。 这个Link可以帮助您做到这一点。它看起来像这样:

<plugin>
  <groupId>org.apache.cxf</groupId>
  <artifactId>cxf-codegen-plugin</artifactId>
  <version>${cxf.version}</version>
  <executions>
    <execution>
        <id>generate-sources</id>
        <phase>generate-sources</phase>
        <configuration>
            <sourceRoot>${project.build.directory}/generated/cxf</sourceRoot>
            <wsdlOptions>
                <wsdlOption>
                    <wsdl>${basedir}/src/main/resources/myService.wsdl</wsdl>
                </wsdlOption>
            </wsdlOptions>
        </configuration>
        <goals>
            <goal>wsdl2java</goal>
        </goals>
    </execution>
  </executions>
</plugin>

jus as a hinwise:如果你不熟悉maven,那就试一试吧。它比你想象的容易!并节省了大量时间。