现在java调用webservice是用啥技术?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了现在java调用webservice是用啥技术?相关的知识,希望对你有一定的参考价值。
我在网上搜索了一下,现在java调用webservice的文章基本上是xfire和axis,在用MyEclipse新建webservice项目是却说xfire被废弃了,请问各位大大,现在调用webservice采用什么样的技术?
参考技术A JAVA调用WS接口现在用的比较多就是AXIS和CXF了最早的时候是使用AXIS的比较多,因为这个是最早支持JAVA的WS接口的,像ECLIPSE里都自带了AXIS,然后因为AXIS很久没有更新了,这时候CXF慢慢进入大家眼中
CXF的接口实现起来更简单,和其它语言实现的接口互相调用的时候兼容性也很好,再加上还有REST可以更简单的访问资源,现在很多新项目都会考虑用CXF,但是有很多老项目还是用的AXIS,如果维护的话也得能看懂,所以还是可以两个都应该学学,必竟就是实现的方式有些不同而已,原理都是差不多的
关于CXF这个我之前找到一个哥们写的一些很不错的笔记,如果有兴趣的话你可以去参考参考 http://my.oschina.net/huangyong/blog/294324 参考技术B axis/axis2 xfire等本回答被提问者采纳
java调用webservice怎么添加 SoapHeader 做验证
方法需要传递2个参数,第一个SOHeader类型,第二个InputParameters (就是body部分) 方法名是INVOKEFMSWS ,找个人帮我看看,因为对方要求有用户名和密码校验,这个通过xml可以加 但是在SOHeader类型里我就不知道怎么加了,希望有大神帮我看下
如果你是用axis生成的代码的话 去用CUX_0_WS_SERVER_PRG_BindingStub.java 这个类调用服务。CUX_0_WS_SERVER_PRG_Service service=new CUX_0_WS_SERVER_PRG_ServiceLocator();
CUX_0_WS_SERVER_PRG_BindingStub stub=(CUX_0_WS_SERVER_PRG_BindingStub)service.CUX_0_WS_SERVER_PRGSOAP();
stub.setUsername("aaaa"); //连接的用户名
stub.setPassword("aaaa"); //连接的密码
stub.setHeader( dddd); //dddd是一个SOAPHeader 具体看对方wsdl要求
stub.invokefmsws(so.in);
不知道对方要求怎么验证 是在header中添加用户名和密码 还是在连接时需提供用户名密码。
所以把添加header 和 使用用户名 密码连接 验证都写了。 找对方确认下用那种方式然后自己试一下。 参考技术A 我自己做过C#掉用Java的webservice测试用例,可以发给你看看,Java的WebService也是自己手码的,里面也有Java自己调自己的,可以分享你看一下。
以上是关于现在java调用webservice是用啥技术?的主要内容,如果未能解决你的问题,请参考以下文章