您的位置:首页 > 编程语言 > Java开发

用eclipse调用远程webservice生成客户端代码

2015-10-20 23:35 661 查看
以前在调用webservice的时候都是自己老老实实用axis写代码,今天在网上看到在myeclipse里面可以根据wsdl接口地址自动生成接口调用客户端代码,于是我就想到在eclipse里面是不是也可以根据wsdl接口地址自动生成接口客户端调用代码呢?答案是肯定的,接下来是操作步骤:

1、file>new>other在弹出的New提示框内,输入web se。



2、选择步骤1图片中的“WebService Client”出现。



3、在步骤2中的Servicedefinition中输入接口地址,点击“Browse...”按钮,弹出



4、点击上面图片“OK”按钮,回到以下界面



5.点击“next”按钮,选择存放自动生成客户端代码的位置



6.点击Finish按钮,就生成了代码



7.生成代码之后,怎么调用呢?

看到步骤6的以Locator和SoapBindingStud结尾的.java文件吗,没错我们主要关注的就是xxLocator.java和xxSoapBindingStub.java

//先new一个xxLocator对象

LggajjzzLocator lggajjzzLocator=new LggajjzzLocator();

//调用xxLocator对象的getXXPort()方法生成xxSoapBindingStub对象

LggajjzzSoapBindingStub stud=(LggajjzzSoapBindingStub) lggajjzzLocator.getlggajjzzPort();

//然后就可以通过stud对象调用接口里面各个方法了

8、但是测试执行代码的时候报错如下:



引起这个问题原因就是接口地址不对,解决办法有两种:

1、修改xxLocator.java中的xxPort_address为正确的接口地址。

2、将步骤7中的代码改为:

LggajjzzLocator lggajjzzLocator=new LggajjzzLocator();

lggajjzzLocator.setEndpointAddress("xxPort", "接口地址");

LggajjzzSoapBindingStub stud=(LggajjzzSoapBindingStub) lggajjzzLocator.getlggajjzzPort();

到这里在运行代码就OK啦!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: