wsdl2java:参数解释
wsdl2java 用于根据WSDL生成相应的服务端和客户端代码的生成工具。
命令行格式为:WSDL2Java [options] -uri <url or path> : A url or path to a WSDL
其中常用的options具体如下:
-o <path> : 指定生成代码的输出路径
-a : 生成异步模式的代码
-s : 生成同步模式的代码
-p <pkg> : 指定代码的package名称
-l <languange> : 使用的语言(Java/C) 默认是java
-t : 为代码生成测试用例
-ss : 生成服务端代码 默认不生成
-sd : 生成服务描述文件 services.xml,仅与-ss一同使用
-d <databinding> : 指定databingding,例如,adb,xmlbean,jibx,jaxme and jaxbri
-g : 生成服务端和客户端的代码
-pn <port_name> : 当WSDL中有多个port时,指定其中一个port
-sn <serv_name> : 选择WSDL中的一个service
-u : 展开data-binding的类
-r <path> : 为代码生成指定一个repository
-ssi : 为服务端实现代码生成接口类
-S : 为生成的源码指定存储路径
-R : 为生成的resources指定存储路径
--noBuildXML : 输出中不生成build.xml文件
--noWSDL : 在resources目录中不生成WSDL文件
--noMessageReceiver : 不生成MessageReceiver类
-scn : 用已有的代码代替skeletons
wsdl文件使用ant生成webservice代码
使用ant工具 将wsdl文件生成webservice代码:
文件目录结构
├─apache-ant-1.9.0
├─axis2-1.5.1
├─axis2-1.6.2
├─jre6
└─wsdl2java
在wsdl2java文件夹下创建如下文件
wsdl2java.cmd
wsdl2java.xml
[wsdl2java][hide].reg
[wsdl2java][show].reg
文件内容:【[wsdl2java][hide].reg】
Windows Registry Editor Version 5.00
[-HKEY_CLASSES_ROOT.wsdl]
[-HKEY_CLASSES_ROOTwsdlfile]
【[wsdl2java][show].reg】
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT.wsdl]
@="wsdlfile"
[HKEY_CLASSES_ROOTwsdlfileshellwsdl2java4all]
@="wsdl2java4all"
[HKEY_CLASSES_ROOTwsdlfileshellwsdl2java4allcommand]
@="cmd.exe /s /c D:/test/wsdl2java/wsdl2java.cmd %1 D:/test/wsdl2java codegen.all"
[HKEY_CLASSES_ROOTwsdlfileshellwsdl2java4client]
@="wsdl2java4client"
[HKEY_CLASSES_ROOTwsdlfileshellwsdl2java4clientcommand]
@="cmd.exe /s /c D:/test/wsdl2java/wsdl2java.cmd %1 D:/test/wsdl2java codegen.client"
【wsdl2java.xml】
<?xml version="1.0" encoding="UTF-8"?>
<project name="CodegenExample" default="codegen.all" basedir=".">
<property environment="env" />
<property name="axis2.home" value="${env.AXIS2_HOME}" />
<path id="codegen.class.path">
<pathelement path="${java.class.path}"/>
<fileset dir="${axis2.home}">
<include name="lib/**.jar"/>
</fileset>
</path>
<taskdef name="codegen"
classname="org.apache.axis2.tool.ant.AntCodegenTask"
classpathref="codegen.class.path" />
<target name="codegen.all">
<codegen wsdlfilename="${codegen.wsdl}"
output="${codegen.dest}"
serverside="true"
serversideinterface="true"
generateservicexml="true" generateAllClasses="true">
</codegen>
<ant antfile="build.xml" dir="${codegen.dest}" />
<copy todir="${codegen.dest}/..">
<fileset dir="${codegen.dest}/build/lib" includes="**/*.jar"/>
</copy>
<!--delete dir="${codegen.dest}" /-->
</target>
<target name="codegen.client">
<codegen wsdlfilename="${codegen.wsdl}"
output="${codegen.dest}" unwrap="true">
</codegen>
<replace dir="${codegen.dest}" defaultexcludes="yes" encoding="UTF-8">
<include name="**/*.java"/>
<replacefilter token="_service.addOperation(__operation)" value="_service.addOperation(__operation);__operation.setSoapAction("")"/>
<replacefilter token="_operationClient.getOptions().setAction(" value="//_operationClient.getOptions().setAction(" />
</replace>
<ant antfile="build.xml" dir="${codegen.dest}" />
<copy todir="${codegen.dest}/..">
<fileset dir="${codegen.dest}/build/lib" includes="**/*.jar"/>
</copy>
<delete dir="${codegen.dest}" />
</target>
</project>
【wsdl2java.cmd】
set ANT_HOME=%2..apache-ant-1.9.0
set AXIS2_HOME=%2..axis2-1.5.1
set PATH=%ANT_HOME%bin;%AXIS2_HOME%bin;%PATH%
set PARAM=%1
ant %3 -f %2wsdl2java.xml -Dcodegen.wsdl=%PARAM% -Dcodegen.dest=%PARAM:~0,-5%
分享到:
相关推荐
如果你的WebService有WSDL接口,可以使用如Axis或CXF等工具生成WSDL文件。 6. **打包WAR文件** 使用`<war>`任务打包你的WebService应用为WAR文件。WAR文件是Web应用程序的标准归档格式,可以直接部署到支持...
4. `<target>` 元素:定义了一个名为`wsclientgen`的目标,描述为生成WebService客户端辅助代码。这通常是构建过程的一部分。 5. `<taskdef>` 元素:引入自定义的任务定义,这里引入的是`WsImport`任务,用于从WSDL...
2、解压之后,编辑(包名,输出路径,wsdl)参数并运行WSDL2Java(URL).bat或者WSDL2Java(file).bat后,将在source中生成WebService客户端代码。 3、直接使用生成的代码调用WebService服务即可。
-server 生成服务器启动webService代码 -impl 生成webService的实现代码 -ant 生成build.xml文件 -all 生成所有代码 ———————————————— 版权声明:本文为CSDN博主「写程序的小白」的原创...
使用Apache Axis工具(或者在MAXIMO6环境下,使用weblogic8自带的axis1.1版本)将WSDL文件转换为JAVA客户端代码。在命令行中,指定classpath包括必要的库文件,如axis.jar、axis-ant.jar等,并执行`wsdl2java`命令...
然后,使用Ant构建工具将生成的代码打包成JAR或WAR文件,以便部署和运行。 3. Web Services服务端和客户端环境搭建 服务端环境通常涉及安装和配置Web服务器(如Tomcat)以及Web Services框架(如AXIS2)。在服务端...
开发者可以使用WSDL文件生成客户端代码或者验证服务端实现。 3. **配置文件**:如`xfire-config.xml`,用于配置XFire的行为,例如指定服务绑定地址、注册服务等。 4. **构建脚本**:可能是Ant或Maven的build.xml...
2. **生成Stub**:通过Axis提供的wsdl2java工具,你可以从Web Service的WSDL(Web Service Description Language)文件生成Java stub类。WSDL文件描述了Web Service的接口、消息格式和操作。生成的Stub类提供了与Web...
- 使用工具或API生成描述WebService接口的WSDL文件。 - **修改WSDL文件**: - 根据实际需求调整WSDL文件中的参数和返回值。 - **编写JUnit测试用例**: - 测试WebService的方法是否按预期工作。 - **编写services....
- **生成Wsdl**:使用AXIS的wsdl2java工具,根据你的Java接口生成相应的WSDL文件,这将描述你的WebService。 - **部署服务**:将生成的服务类和WSDL文件部署到服务器上,AXIS提供了一个简单的HTTP服务器,可以用来...
4. **根据AppService类生成WSDL文件**:通过命令行工具或其他工具自动生成WSDL文件。 5. **修改AppService.wsdl文件**:调整WSDL文件中的服务描述信息。 6. **完成AppService类的服务功能**:实现具体的业务逻辑。 7...
- 生成客户端 stub:使用Axis的wsdl2java工具,从服务的WSDL文件生成客户端代码。 - 编写客户端代码:在生成的客户端代码基础上,编写调用Web服务的方法。 - 运行客户端:执行客户端代码,通过HTTP请求与服务进行...
1. **生成客户端 stubs**:使用Axis2的 wsdl2java工具,可以基于服务的WSDL生成客户端所需的Java代码,这些代码被称为stubs,它们提供了方便的API来调用Web服务。 2. **编译和运行客户端**:将生成的客户端代码编译...
使用Apache Axis,开发人员可以利用WSDL(Web服务描述语言)文件来生成客户端代码,这个文件通常由服务提供者提供,描述了服务的接口、方法、输入和输出参数等信息。通过这种方式,客户端可以理解如何与Web服务通信...
在WebService的开发过程中,XDoclet能够用来自动生成WSDL文件(Web服务描述语言文件)和部署描述文件,这在简化WebService的开发流程上起到了重要作用。在Eclipse中配置XDoclet,通常需要访问项目属性,然后配置...
此外,还可以编写客户端代码来调用这个服务,例如使用Axis的`java2wsdl`工具生成客户端 stubs,然后在客户端代码中调用这些stubs。 6. **使用服务**:在客户端,导入生成的 stubs 类,实例化服务代理,然后调用相应...
2. **生成服务代理**:使用Xfire提供的工具,如`xfire-generator`,可以通过WSDL文件生成Java客户端代理类。这可以通过`exec`任务来完成。 3. **编译客户端代码**:利用Ant的`javac`任务,编译包含客户端代理类和...