Java 关于从WSDL生成客户端代码

Java 关于从WSDL生成客户端代码,java,web-services,axis2,Java,Web Services,Axis2,我是Web服务世界的新bie,我必须开发客户端代码,即java代码,我已经获得了一个wsdl,我可以通过在浏览器中打开该wsdl看到该wsdl,因为我可以访问wsdl。请让我知道如何通过Axis 2从该wsdl本身生成客户端代码,任何帮助都将不胜感激,提前感谢这里简要介绍一下生成客户端java代码需要做什么: 在webbrowser中打开指向wsdl文档的URL 将该网页另存为xml文档 重命名文件,使其扩展名为.wsdl(可选) 然后需要通过java命令运行WSDLToJava文件,该类将包含

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

这里简要介绍一下生成客户端java代码需要做什么:

  • 在webbrowser中打开指向wsdl文档的URL
  • 将该网页另存为xml文档
  • 重命名文件,使其扩展名为.wsdl(可选)
  • 然后需要通过java命令运行WSDLToJava文件,该类将包含在axis.jar中
  • 提供wsdl文件名作为此java文件的参数
  • 提供此java命令所需的所有jar文件作为类路径参数
  • 因此,您的命令将如下所示:


    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您的_wsdl_fileName.wsdl

    如果您使用的是Eclipse,请使用本链接中提到的Java代码生成。

    有许多方法可以生成客户端和服务器存根。 您可以使用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>
    
    
    org.apache.axis2
    axis2-wsdl2code-maven-plugin
    1.6.0
    ws1
    wsdl2code
    真的
    亚行
    ma.glasnost.sample.axis2-maven
    src/main/resources/ws.wsdl
    目标/生成源
    同步
    ..... 如果您有许多web服务
    
    还添加axis2 JAR作为依赖项

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