博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
axis1.4生成客户端
阅读量:6985 次
发布时间:2019-06-27

本文共 1833 字,大约阅读时间需要 6 分钟。

根据wsdl的url,使用axis1.4生成客户端,并且对webservice进行调用

1、到www.apache.org上去下载axis-bin-1_4.zip,如要关联源代码就把axis-src-1_4.zip也下载下来。

2、建一个java项目,导入axis-bin-1_4.zip下的lib文件下的所有jar包

3、右键项目/Run As/Run Configurations...

4、然后在Main标签下选择对应的Project以及Main class: org.apache.axis.wsdl.WSDL2Java

5、然后在Arguments标签下的Program arguments:下输入-o Client -d Session -S true D:\project\FIIS_CRJ_AXIS\dest\test.wsdl

   其中D:\project\FIIS_CRJ_AXIS\dest\test.wsdl也可以是具体的wsdl路径http://192.168.1.10:7001/test/test?WSDL

6、最后点Run运行————这时如果报缺少jar包,可以找spring的依赖包,里面有很多,这里还要加入com.springsource.javax.activation-1.1.0.jar和com.springsource.javax.mail-1.4.0.jar。

7、执行上面的操作后会在我们的项目下生成一个Client文件,文件下的内容就是调用webservice的客户端代码

使用:都会有一个本地类   Locator 以及 Soap,创建出这两个就可以调用对应的webservice方法了

例:

TraditionalSimplifiedWebServiceLocator locator = new TraditionalSimplifiedWebServiceLocator();

TraditionalSimplifiedWebServiceSoap stub = (TraditionalSimplifiedWebServiceSoap)locator.getTraditionalSimplifiedWebServiceSoap();

System.out.println(stub.toTraditionalChinese("张三"));

还要一种情况:调用的webservice前要登陆,这种情况怎么处理?

1、先登陆得到sessionId

2、把sessionId设置到header里,找到   Stub类下的createCall()方法

protected org.apache.axis.client.Call createCall() throws java.rmi.RemoteException {

        try {

            org.apache.axis.client.Call _call = super._createCall();

           

            //设置头信息

            SOAPHeaderElement hElement = new SOAPHeaderElement(new QName("sessionInfo"));

            SOAPElement sid = hElement.addChildElement("sessionId");

            sid.addTextNode(Remote_SessionInfo.getSessionId());

            _call.addHeader(hElement);

这样就可以调用webservice了。

org.apache.axis.wsdl.WSDL2Java

-o src

-p com.gpb.serv

-a http://127.0.0.1:8899/webService/Credit?wsdl

-o src

-p com.gpb.serv

-a http://192.168.120.222:88/webService/Credit?wsdl

-uri http://127.0.0.1:8899/webService/Credit?wsdl

-p com.gpb.serv

-o src -a http://127.0.0.1:8899/webService/Credit?wsdl

转载于:https://www.cnblogs.com/wxzsm/p/3688886.html

你可能感兴趣的文章
C# -- 等待异步操作执行完成的方式 C# -- 使用委托 delegate 执行异步操作 JavaScript -- 原型:prototype的使用 DBHelper类连接数据库 MVC ...
查看>>
Git rebase使用
查看>>
Tetris in javascript[俄罗斯方块]
查看>>
Just Be
查看>>
一个感人的爱情故事(中英对照)
查看>>
【转载】大整数相乘
查看>>
Android 小项目之--Mini音乐播放器【简单版】(附源码)
查看>>
Delphi判断文件是否正在被使用
查看>>
TaskAsyncHelper
查看>>
知之为知之,不知为不知。
查看>>
设计模式6大原则
查看>>
C# WinForm 文件上传下载
查看>>
[转载]日历设计之重复事件规则设计
查看>>
HTTP协议详解(真的很经典)
查看>>
(转)什么是云计算
查看>>
Linux性能监控命令——sar
查看>>
使用Asp.net mvc + Linq + mvc_scaffold_gen_setup.exe 生成一个完整的家庭帐册大管家程序 之二...
查看>>
视差滚动(Parallax Scrolling)效果的原理和实现
查看>>
咏南中间件支持DELPHI低版本开发的两层程序平稳升级到三层
查看>>
带监督的文本分类算法FastText
查看>>