java cxf动态调用服务端的webservices方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java cxf动态调用服务端的webservices方法相关的知识,希望对你有一定的参考价值。

我用wsdl2java命令生成了webservice代码,通过cxf调用ws的方法,但是现在项目有这样的需求,服务端的ip地址是未知的,怎么样才能实现不用改代码也能调用ws的方法

WebService实现
1、 整个项目使用CXF来实现,在实现的过程中,在MyEclipse中对CXF下lib中的所有jar文件通过引入外部包来处理。
2、 在MyEclipse6.5中可以实现服务器端和客户端,但是客户端在使用wsdl进行动态调用的过程中总是报错,最后使用MyEclipse9.0实现了进行动态调用的实现。其中发生的错误如下:
(1)Exception in thread "main" java.lang.LinkageError: 正在从引导类加载器加载 JAXB 2.1 API, 但此 RI (来自jar:file:/D:/CXF/lib/jaxb-impl-2.2.5.jar!/com/sun/xml/bind/v2/model/impl/ModelBuilder.class) 需要 2.2 API。请使用授权目录机制将 jaxb-api.jar 放在引导类加载器中。(请参阅 http://java.sun.com/j2se/1.6.0/docs/guide/standards/)
解决办法:
通过删除引入包中的jaxb-impl-2.2.5.jar文件可以解决。
(2)java.lang.IllegalArgumentException: Can not set final com.sun.tools.internal.xjc.reader.internalizer.InternalizationLogic field
参考技术A 调用时,把wsdlURL地址改掉不行了

以上是关于java cxf动态调用服务端的webservices方法的主要内容,如果未能解决你的问题,请参考以下文章

CXF的JaxWsDynamicClientFactory调用服务端,服务端收到参数为空

cxf服务端启动报错java.lang.NoSuchFieldError: QUALIFIED 急!望解答!

CXF soup webservice 动态客户端调用工具类

SpringBoot整合cxf发布webService和客户端的调用

如何使用CXF调用webservice接口

Java发布webservice应用并发送SOAP请求调用