不知道发布端(即服务器端)是哪种发布技术的情况下,客户端使用axis去调用,报错:unexpected element (uri:" Expected elements are <

来源:互联网 发布:印尼旅行社软件 编辑:程序博客网 时间:2024/06/06 14:11

不知道发布端(即服务器端)是哪种发布技术的情况下,客户端使用axis去调用,报错:


{http://xml.apache.org/axis/}stackTrace:Unmarshalling Error: unexpected element (uri:"http://XX.XX.XX.XX.XX.com/", local:"arg0"). Expected elements are <{}arg0>

找了很久,突然发现一片文章,跟我的情况完全一样。

http://t22011787.iteye.com/blog/1144662


问题出在:

解决方法:
使用与cxf发布端匹配的cxf客户端方式去调用。

之前问过服务器端用的什么技术,那边说:是CXF集成的,其实应该就是实现了jax-ws ,反馈的截图如下。


我理解原来他们使用的就是jax-ws方式,其实不是。。。




虽然cxf和jax-ws有一定关系,甚至cxf是基于jax-ws的,但是,但是,cxf和jax-ws是两种不同的技术和方式。


所以使用axis客户端调用cxf服务器端即发布端,是不行的,得使用cxf客户端代码去调用cxf接口。


总结:

1webservice的发布方式不同(axis、jax-ws、cxf等),客户端调用方式也不一样,即客户端代码也不一样。


2所以下一次,在写客户端的调用程序之前,一定要搞清楚服务器端(即发布端)的使用的什么发布方式,然后再对应的书写客户端代码。



阅读全文
0 0
原创粉丝点击