[b]1.前言[/b]
首先,需要下载axis2工具包,见附件,我这里是axis2-1.5.3的版本,axis2的官网http://axis.apache.org/axis2/java/core/download.cgi也可以直接下载,下面是配置步骤。
[b]2.步骤[/b]
(1)配置环境,首先jdk必须在环境变量中有,jdk的配置省略。除开jdk,还需要配置axis2的环境变量。如我这里是:
图片1.图片1请看附件。
(2)用命令生成java客户端文件。可以用wsdl的xml或者url两种方式生成,即
wsdl2java.bat -uri d:\test.xml -o e:\create 或
wsdl2java.bat -uri http://192.168.1.2/hello?wsdl -o e:\create、
其中,-uri后面的是你的webservice服务对应的xml或者url地址。wsdl2java还有很多参数,不用这么麻烦,直接-o输出就可以了。这样便在e:\create生成三个文件.一个 handler,一个sub,一个build.xml.
[b]3.需要注意的。[/b]
(1)生成的sub在http调用的时候,chunk协议会有冲突,所以,应该在每个回调方法中,加上
_messageContext.setProperty(HTTPConstants.CHUNKED, "false");
一句,就可以了。
这是由于axis2在http传输中默认用http1.1的块传输chunked,而.net和http传输虽然也是用http1.1但是没有采用chunked而是固定长度,所以这样有冲突。
(2)由于.net的webservice的命名空间没有采用ns1前缀,所以,java开发中还需要把sub里面的
public static final javax.xml.namespace.QName MY_QNAME = new javax.xml.namespace.QName("http://tempuri.org/ " ,"aa","ns1");中的ns1去掉,如我这里都改成
public static final javax.xml.namespace.QName MY_QNAME = new javax.xml.namespace.QName("http://tempuri.org/ " ,"aa");
首先,需要下载axis2工具包,见附件,我这里是axis2-1.5.3的版本,axis2的官网http://axis.apache.org/axis2/java/core/download.cgi也可以直接下载,下面是配置步骤。
[b]2.步骤[/b]
(1)配置环境,首先jdk必须在环境变量中有,jdk的配置省略。除开jdk,还需要配置axis2的环境变量。如我这里是:
图片1.图片1请看附件。
(2)用命令生成java客户端文件。可以用wsdl的xml或者url两种方式生成,即
wsdl2java.bat -uri d:\test.xml -o e:\create 或
wsdl2java.bat -uri http://192.168.1.2/hello?wsdl -o e:\create、
其中,-uri后面的是你的webservice服务对应的xml或者url地址。wsdl2java还有很多参数,不用这么麻烦,直接-o输出就可以了。这样便在e:\create生成三个文件.一个 handler,一个sub,一个build.xml.
[b]3.需要注意的。[/b]
(1)生成的sub在http调用的时候,chunk协议会有冲突,所以,应该在每个回调方法中,加上
_messageContext.setProperty(HTTPConstants.CHUNKED, "false");
一句,就可以了。
这是由于axis2在http传输中默认用http1.1的块传输chunked,而.net和http传输虽然也是用http1.1但是没有采用chunked而是固定长度,所以这样有冲突。
(2)由于.net的webservice的命名空间没有采用ns1前缀,所以,java开发中还需要把sub里面的
public static final javax.xml.namespace.QName MY_QNAME = new javax.xml.namespace.QName("http://tempuri.org/ " ,"aa","ns1");中的ns1去掉,如我这里都改成
public static final javax.xml.namespace.QName MY_QNAME = new javax.xml.namespace.QName("http://tempuri.org/ " ,"aa");