JDK1.5客户端调用CXF的WebService服务

SimoneTao 2015-08-19 01:59:32
因为我所在的公司一个老项目要和另外一个公司的新项目做一些集成交互,所以设计使用webservice。对方新项目中使用CXF编写了WebService,供我这边调用。而我公司这边使用的是XFire。
我试着用以前调XFire的WebService的方法去调用CXF的WebService,代码片段大致如下:
String xmls = "这里是字符串信息。。。。" ;
JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
factory.setServiceClass(IMessageService.class);
factory.setAddress("http://localhost/services/MessageService?wsdl");
IMessageService ims= (IMessageService)factory.create();
System.out.println(ims.abcd(xmls));

但是运行的时候发现在ims.abcd(xmls)那行出了Exception in thread "main" java.lang.UnsupportedClassVersionError: Bad version number in .class file。
上网搜了一下,发现貌似调用CXF的WebService需要用到服务端的接口Class才行。或者在JDK1.6下才有可以不用服务端接口Class而调用CXF的WebService的方法(例如使用JaxWsDynamicFactory类)。

因为公司项目是老项目,早就完成并投入使用了,一直都用的是JDK1.5,不可能要求更换JDK。

求教达人,有没有什么方法可以在JDK1.5下不需要服务端接口Class就能调用CXF的WebService?十分感谢!!!!
...全文
246 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
nicholasbobo 2015-08-19
  • 打赏
  • 举报
回复
引用 10 楼 u010517231 的回复:
[quote=引用 9 楼 nicholasbobo 的回复:] 上百度一搜一大把的文章 看看这个吧,http://www.blogjava.net/zjhiphop/archive/2009/04/29/webservice.html
我的问题是版本冲突。就是不知道该怎么去找jar包。哪个版本的。[/quote] 用xfire吧,1.5的它支持
SimoneTao 2015-08-19
  • 打赏
  • 举报
回复
引用 9 楼 nicholasbobo 的回复:
上百度一搜一大把的文章 看看这个吧,http://www.blogjava.net/zjhiphop/archive/2009/04/29/webservice.html
我的问题是版本冲突。就是不知道该怎么去找jar包。哪个版本的。
nicholasbobo 2015-08-19
  • 打赏
  • 举报
回复
上百度一搜一大把的文章 看看这个吧,http://www.blogjava.net/zjhiphop/archive/2009/04/29/webservice.html
SimoneTao 2015-08-19
  • 打赏
  • 举报
回复
引用 6 楼 nicholasbobo 的回复:
[quote=引用 3 楼 u010517231 的回复:] [quote=引用 2 楼 nicholasbobo 的回复:] 调用webservice不需要关心对方用什么框架或语言开发的,也就是说你可以用其他框架作为客户端来调用webservice,不一定要用cxf来做客户端,你可以试下用axis,axis2,xfire甚至纯http
这个我知道。现在我的问题是:我把jdk改成1.6的话就是ok的。如果把jdk改成1.5.那么问题就出来了,就说版本冲突。Exception in thread "main" java.lang.UnsupportedClassVersionError: Bad version number in .class file。[/quote] 你没看到错误就是版本冲突吗?证明你用的cxf包只支持1.6以上的,所以要你换一种方式去调用[/quote] 你那儿有例子吗?刚学这个。邮箱mengtao-hj@163.com
SimoneTao 2015-08-19
  • 打赏
  • 举报
回复
引用 4 楼 u010517231 的回复:
jdk改成1.6的话就是ok的。如果把jdk改成1.5.那么问题就出来了,就说版本冲突。Exception in thread "main" java.lang.UnsupportedClassVersionError: Bad version number in .class file。 肿么解决。浪费我一天时间了。。。
没人知道这个是怎么回事吗?
nicholasbobo 2015-08-19
  • 打赏
  • 举报
回复
引用 3 楼 u010517231 的回复:
[quote=引用 2 楼 nicholasbobo 的回复:] 调用webservice不需要关心对方用什么框架或语言开发的,也就是说你可以用其他框架作为客户端来调用webservice,不一定要用cxf来做客户端,你可以试下用axis,axis2,xfire甚至纯http
这个我知道。现在我的问题是:我把jdk改成1.6的话就是ok的。如果把jdk改成1.5.那么问题就出来了,就说版本冲突。Exception in thread "main" java.lang.UnsupportedClassVersionError: Bad version number in .class file。[/quote] 你没看到错误就是版本冲突吗?证明你用的cxf包只支持1.6以上的,所以要你换一种方式去调用
SimoneTao 2015-08-19
  • 打赏
  • 举报
回复
大神现身吧。。。。
SimoneTao 2015-08-19
  • 打赏
  • 举报
回复
jdk改成1.6的话就是ok的。如果把jdk改成1.5.那么问题就出来了,就说版本冲突。Exception in thread "main" java.lang.UnsupportedClassVersionError: Bad version number in .class file。 肿么解决。浪费我一天时间了。。。
SimoneTao 2015-08-19
  • 打赏
  • 举报
回复
引用 2 楼 nicholasbobo 的回复:
调用webservice不需要关心对方用什么框架或语言开发的,也就是说你可以用其他框架作为客户端来调用webservice,不一定要用cxf来做客户端,你可以试下用axis,axis2,xfire甚至纯http
这个我知道。现在我的问题是:我把jdk改成1.6的话就是ok的。如果把jdk改成1.5.那么问题就出来了,就说版本冲突。Exception in thread "main" java.lang.UnsupportedClassVersionError: Bad version number in .class file。
nicholasbobo 2015-08-19
  • 打赏
  • 举报
回复
调用webservice不需要关心对方用什么框架或语言开发的,也就是说你可以用其他框架作为客户端来调用webservice,不一定要用cxf来做客户端,你可以试下用axis,axis2,xfire甚至纯http
SimoneTao 2015-08-19
  • 打赏
  • 举报
回复
自己顶一下。。。

50,336

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧