IDEA中WebService如何生成Java代码并调用外部接口
小编给大家分享一下IDEA中WebService如何生成Java代码并调用外部接口,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
最近一个Spring项目中需要调用其他第三方系统的接口对接数据,对方只给了一个wsdl地址,我们需要根据给的wsdl地址,自己来生成里边的接口等调用接口所需要的类,来调用接口实现数据获取,进行自己的业务处理。
通过wsdl文件生成java代码
我们根据wsdl地址生成所需接口的代码,方式很多。可以用jdk自带的wsimport,我是用的idea开发工具生成的。
根据对方提供的地址,在浏览器中输入能调用得到xml格式文件,证明对方服务开启并能访问,然后右键网页保存xml文件,修改后缀名为wsdl。
将wsdl文件拷贝到项目中。idea生成的时候需要选择这个文件。
首先你要确定你要确定将代码生成在哪里。如图我新建的一个项目,我打算在我新建的webservice文件夹里生成代码,点击file-new-module(idea版本好像老版本可以右键webservice文件夹来选择webservice client),如下:
如果是第一次使用webservice Client来生成java代码,则需要安装插件,并重启浏览器,此时我已安装。
安装好插件后,再次new modeuls,选择WebService Client,选择Axis方式来生成java代码,选择download来下载axis相关的jar包。
点击next,配置代码生成的路径和模块名称,点击ok,点击finish,会下载相关jar包,下载成功后
下载成功后,选择wsdl文件,生成java代码
生成文件的目录,包括jar包和java代码和测试类
生成的测试类如下:
package example;public class HelloWorldClient { public static void main(String[] argv) { try { HelloWorldServiceLocator locator = new HelloWorldServiceLocator(); Activator service = locator.get(); // If authorization is required //((HelloWorldSoapBindingStub)service).setUsername("user3"); //((HelloWorldSoapBindingStub)service).setPassword("pass3"); // invoke business method service.businessMethod(); } catch (javax.xml.rpc.ServiceException ex) { ex.printStackTrace(); } catch (java.rmi.RemoteException ex) { ex.printStackTrace(); } }}
调用外部接口
idea工具生成java代码后,还需要根据实际情况来调用接口
在测试类里面,可以测试调用外部接口
这里我是新建了一个客户端类,来调用外部的接口方法
调用成功返回数据
以上是“IDEA中WebService如何生成Java代码并调用外部接口”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网行业资讯频道!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341