关于从WSDL生成客户端代码

时间:2013-04-17 10:15:05

标签: java web-services axis2

我是webservices世界的新bie,我必须开发客户端代码,这是java代码,我已经提供了一个wsdl,我可以通过在浏览器中打开wsdl看到,因为我有权访问to wsdl请让我知道如何通过Axis 2从wsdl本身生成客户端代码,任何帮助将不胜感激,提前致谢

3 个答案:

答案 0 :(得分:1)

有很多方法可以生成客户端和服务器存根。 您可以使用WSDL2Code插件方法 此插件将WSDL作为输入,并生成客户端和服务器存根,以调用或实现与WSDL匹配的Web服务。 将以下部分添加到您的POM

      <plugin>
            <groupId>org.apache.axis2</groupId>
            <artifactId>axis2-wsdl2code-maven-plugin</artifactId>
            <version>1.6.0</version>
            <executions>
                <execution>
                    <id>ws1</id>
                    <goals>
                        <goal>wsdl2code</goal>
                    </goals>
                    <configuration>
                       <unpackClasses>true</unpackClasses>
                       <databindingName>adb</databindingName>
                       <packageName>ma.glasnost.sample.axis2-maven</packageName>
                       <wsdlFile>src/main/resources/ws.wsdl</wsdlFile>
                       <outputDirectory>target/generated-sources</outputDirectory>
                       <syncMode>sync</syncMode>
                    </configuration>
                </execution>
           ..... if you have many web services                
            </executions>
        </plugin>

还将axis2 jar作为依赖项添加

 <dependency>
          <groupId>org.apache.axis2</groupId>
          <artifactId>axis2</artifactId>
          <version>1.4</version>
 </dependency>

答案 1 :(得分:0)

这里简要概述了生成客户端Java代码所需要做的事情:

  1. 打开指向webbrowser中的wsdl文档的URL。
  2. 将该网页另存为xml文档。
  3. 将文件重命名为.wsdl扩展名(可选)
  4. 然后你需要通过java命令运行WSDLToJava java文件,这个类将包含在axis.jar中。
  5. 提供wsdl文件名作为此java文件的参数。
  6. 将所有需要的jar文件作为此java命令的类路径参数提供
  7. 所以你的命令看起来如下:

    java -classpath axis.jar;%CATALINA_HOME%/ shared / lib / commons-httpclient.jar;%CATALINA_HOME%/ shared / lib / log4j.jar;%CATALINA_HOME%/ shared / lib / commons-logging.jar; wsdl4j.jar; commons-net.jar; commons-discovery.jar; jaxrpc.jar; soap.jar; saaj.jar org.apache.axis.wsdl.WSDL2Java your_wsdl_fileName.wsdl

答案 2 :(得分:0)

如果您使用的是Eclipse,请使用此链接中提到的Java代码生成。http://axis.apache.org/axis2/java/core/tools/eclipse/wsdl2java-plugin.html#WSDL2Java