`
lujiawu12
  • 浏览: 126942 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

axis2 command line and code generation

    博客分类:
  • java
阅读更多
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.6.2,jar包下载,依赖包

    axis2-wsdl2code-maven-plugin-1.5.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.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.6.2,javadoc,jar包下载,依赖包

    axis2-wsdl2code-maven-plugin-1.5.6-javadoc.jar

    标签:axis2-wsdl2code-maven-plugin-1.5.6-javadoc.jar,axis2,wsdl2code,maven,plugin,1.5.6,javadoc,jar包下载,依赖包

    Axis2 code generator

    Axis2 code generator + backport-util-concurrent-3.1.jar 版本:1.3.0 解压缩后,放到eclipse的plugins文件夹下。 重新打开eclipse,new-&gt;other 就能看到插件了 出现这个错误的话: An error ocurred while ...

    Axis2_Code_Generator.zip

    标题 "Axis2_Code_Generator.zip" 暗示了这是一个与Apache Axis2相关的代码生成工具。Apache Axis2是Java环境中广泛使用的Web服务框架,它允许开发者创建、部署和管理Web服务。这个压缩包可能包含了用于自动生成Axis...

    axis2 Axis2_Code_Generator Axis2_Service_Archiver

    标题 "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,wsdl2code,maven,plugin,1.5.6,jar包下载,依赖包

    axis2-1.7.9.zip

    "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-1.7.9.zip_axis2_axis2-idea-plugin_idea导入axis2_"提到了几个关键元素,分别是"axis2"、"idea-plugin"和"idea导入axis2",这暗示了这个压缩包是用于在IntelliJ IDEA这款集成开发环境...

    axis2相关的jar包

    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-wsdl2code-maven-plugin-1.5.3.jar

    官方版本,亲测可用

    axis2-wsdl2code-maven-plugin-1.5.2.jar

    官方版本,亲测可用

    axis2-wsdl2code-maven-plugin-1.3.jar

    官方版本,亲测可用

    axis2-1.6.2

    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_...

    axis2-1.5.1-bin.zip axis2-1.5.1-war.zip axis2部署使用

    Apache Axis2是著名的开源Web服务框架,用于构建和部署高效且灵活的Web服务。这个框架是基于Axis1的升级版,提供了许多改进和新特性,包括更好的性能、模块化架构和增强的MIME支持。标题提到的“axis2-1.5.1-bin.zip...

    axis2-bin-And-axis2-war.zip

    标题中的"axis2-bin-And-axis2-war.zip"指的是Apache Axis2的一个软件包,它包含了两种不同的部署形式:bin和war。Apache Axis2是著名的Web服务框架,用于创建和部署Web服务。这个压缩包可能提供了Axis2的不同版本,...

    axis2-wsdl2code-maven-plugin-1.5-sources.jar

    官方版本,亲测可用

    axis2的API,axis2 API,axis2帮助文档

    Axis2是Apache软件基金会开发的一个开源Web服务引擎,它提供了基于SOAP(Simple Object Access Protocol)的Web服务实现。本文将详细介绍Axis2的API及其在Web服务开发中的应用,同时也会探讨Axis2的帮助文档如何协助...

Global site tag (gtag.js) - Google Analytics