用WSDL生成服务端和客户端
现在有以下需求:
A系统以前是经常与C系统合作的,他们之间的webservice通讯已经成熟,我方作为B系统,与A,C系统间均通过webservice通讯,目前A系统无法访问C系统了,需要我们的B系统提供给A一个webservice的服务,且返回给A系统的内容需要与A直接访问C系统获取的内容要一致。
处理方案如下:
获取C系统提供给A系统的WSDL,用此WSDL生成B系统访问C系统的客户端,同时生成提供给A系统的服务端(同一个WSDL即生成服务端,也生成客户端)
- WSDL生成服务端
工具为Eclipse
新建一个web工程
自动生成web.xml文件
将A系统的WSDL放到B系统工程的根目录下
右键WSDL生成服务端
下一步
放置该文件
正常生成后可以启动server
点击下一步,然后完成
查看访问链接
在浏览器中访问,结果如下
2,WSDL生成客户端,访问C系统
- 新建一个Java工程
- 创建webservice客户端
拷贝C系统的WSDL
下一步
下一步
点击完成
用客户端测试访问C和B的服务,只需修改URL即可
断点调试查看运行情况:
测试结果
到此已完成用C系统的WSDL即生成访问C系统的客户端,有提供给A系统访问B系统的服务(与A系统直接访问C系统一样的效果)