1.ant脚本 WSDL2JAVA
<!--
WSDL2JAVA 参数说明
-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类
-->
<target name="generate.service">
<delete dir="${service.target}" />
<mkdir dir="${service.target}" />
<mkdir dir="${service.target}/classes" />
<java classname="org.apache.axis2.wsdl.WSDL2Java" classpathref="Maven Dependencies.libraryclasspath" fork="true">
<arg line="-uri ${wsdl.uri}" />
<arg line="-s" />
<arg line="-ss" />
<arg line="-sd" />
<arg line="-ssi" />
<arg line="-ap" />
<arg line="-ns2p http://cn.ecplive/xsd=cn.ecplive.service.adb.xsd" />
<arg line="-l java" />
<arg line="-p cn.ecplive.service.adb" />
<arg line="-d adb" />
<arg line="-o ${build.dir}/service" />
</java>
</target>
<target name="generate.client">
<delete dir="${client.target}" />
<mkdir dir="${client.target}" />
<mkdir dir="${client.target}/classes" />
<java classname="org.apache.axis2.wsdl.WSDL2Java" classpathref="Maven Dependencies.libraryclasspath" fork="true">
<arg line="-uri ${wsdl.uri}" />
<arg line="-t" />
<arg line="-u" />
<arg line="-s" />
<arg line="-ns2p http://cn.ecplive/xsd=cn.ecplive.service.adb.xsd" />
<arg line="-l java" />
<arg line="-p cn.ecplive.zteclient" />
<arg line="-o ${build.dir}/client" />
</java>
</target>
2.AXIS2自动生成的客户端设置:
(转载 http://lichangwei.iteye.com/blog/230871)
Chunk选项阻碍axis2集成.NET服务
昨天用.NET创建了一项WEB服务,实现一个应用集成接口。使用C#和VB.NET客户端均可以正常实现调用。为了实现JAVA客户端的集成,下载了axis2。在生成客户端stub以后,使用一个简单的测试代码,可无论如何均不能实现服务调用,郁闷。
回想起以前使用axis的时候是可以正常调用的,同事们也都用过,重新下载axis,在生成wsil并根据wsil生成客户端代理以后,JAVA客户端可以正常调用那项服务了。
使用协议分析工具,发现在axis中使用的是HTTP/1.0协议,而.NET和axis2使用的是HTTP/1.1协议,后两者的区别在于.NET未使用ns1的命名空间前缀打包SOAP请求,且axis2使用了Content-Encoding: chunked头。
通过修改wsdl2java生成的stub程序,取消ns1的命名空间前缀,故障依然存在。查了HTTP/1.1相关说明,并查找axis2相关javadoc,修改了stub类带(ConfigurationContext configurationContext, String targetEndpoint, boolean useSeparateListener)参数的构造方法,在最后加入一句禁止使用chunk选项,终于调用成功:_serviceClient.getOptions().setProperty(HTTPConstants.CHUNKED, Boolean.FALSE);
_serviceClient.getOptions().setProperty(HTTPConstants.CHUNKED,
Constants.VALUE_FALSE);
分享到:
相关推荐
标签:axis2-wsdl2code-maven-plugin-1.6.2.jar,axis2,wsdl2code,maven,plugin,1.6.2,jar包下载,依赖包
标签:axis2-wsdl2code-maven-plugin-1.5.jar,axis2,wsdl2code,maven,plugin,1.5,jar包下载,依赖包
标签:axis2-wsdl2code-maven-plugin-1.6.0-sources.jar,axis2,wsdl2code,maven,plugin,1.6.0,sources,jar包下载,依赖包
标签:axis2-wsdl2code-maven-plugin-1.6.2-javadoc.jar,axis2,wsdl2code,maven,plugin,1.6.2,javadoc,jar包下载,依赖包
标签:axis2-wsdl2code-maven-plugin-1.5.6-javadoc.jar,axis2,wsdl2code,maven,plugin,1.5.6,javadoc,jar包下载,依赖包
Axis2 code generator + backport-util-concurrent-3.1.jar 版本:1.3.0 解压缩后,放到eclipse的plugins文件夹下。 重新打开eclipse,new->other 就能看到插件了 出现这个错误的话: An error ocurred while ...
标题 "Axis2_Code_Generator.zip" 暗示了这是一个与Apache Axis2相关的代码生成工具。Apache Axis2是Java环境中广泛使用的Web服务框架,它允许开发者创建、部署和管理Web服务。这个压缩包可能包含了用于自动生成Axis...
标题 "Axis2_Code_Generator Axis2_Service_Archiver" 指的是Apache Axis2框架中的两个关键工具,用于简化Web服务开发过程。Apache Axis2是一个高效、可扩展且灵活的Web服务引擎,它构建在Apache Axis之上,提供了更...
标签:axis2-wsdl2code-maven-plugin-1.5.6.jar,axis2,wsdl2code,maven,plugin,1.5.6,jar包下载,依赖包
"axis2-1.7.9.zip" 是一个包含Apache Axis2 1.7.9版本的二进制发行版的压缩文件。Apache Axis2是一个成熟的、高性能的Web服务引擎,用于创建和部署Web服务。它是Apache SOAP项目的下一代,专注于提供更强大的功能和...
标题中的"axis2-idea-plugin-1.7.9.zip_axis2_axis2-idea-plugin_idea导入axis2_"提到了几个关键元素,分别是"axis2"、"idea-plugin"和"idea导入axis2",这暗示了这个压缩包是用于在IntelliJ IDEA这款集成开发环境...
axis2-adb-1.5.4.jar axis2-adb-codegen-1.5.4.jar axis2-codegen-1.5.4.jar axis2-corba-1.5.4.jar axis2-fastinfoset-1.5.4.jar axis2-java2wsdl-1.5.4.jar axis2-jaxbri-1.5.4.jar axis2-jaxws-1.5.4.jar axis2-...
官方版本,亲测可用
官方版本,亲测可用
官方版本,亲测可用
axis2-1.6.2.zip, windows axis2工具,根据 WSDL生成java文件。 1、axis2客户端下载地址:http://mirror.esocc.com/apache//axis/axis2/java/core/1.6.2/axis2-1.6.2-bin.zip; 2、下载解压在D:\Work_Program_...
Apache Axis2是著名的开源Web服务框架,用于构建和部署高效且灵活的Web服务。这个框架是基于Axis1的升级版,提供了许多改进和新特性,包括更好的性能、模块化架构和增强的MIME支持。标题提到的“axis2-1.5.1-bin.zip...
标题中的"axis2-bin-And-axis2-war.zip"指的是Apache Axis2的一个软件包,它包含了两种不同的部署形式:bin和war。Apache Axis2是著名的Web服务框架,用于创建和部署Web服务。这个压缩包可能提供了Axis2的不同版本,...
官方版本,亲测可用
Axis2是Apache软件基金会开发的一个开源Web服务引擎,它提供了基于SOAP(Simple Object Access Protocol)的Web服务实现。本文将详细介绍Axis2的API及其在Web服务开发中的应用,同时也会探讨Axis2的帮助文档如何协助...