异常如下:
org.apache.cxf.interceptor.Fault: Found element {}but could not find matching RPC/Literal part
at org.apache.cxf.binding.soap.interceptor.RPCInInterceptor.handleMessage(RPCInInterceptor.java:171)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:243)
at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:700)
at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:2261)
at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:2134)
at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1988)
at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:639)
at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:243)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:487)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:313)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:265)
at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:124)
问题原因:WebService的编码格式有两种Literal、Encoded。其中Encoded是比较古老的编码方式,现在WebServcie标准官方已经不建议使用了。CXF不支持这种编码格式
解决方案:换其他框架,后来我转为jax-ws调用,问题解决.
分享到:
相关推荐
在本文中,我们将深入探讨与标题和描述相关的知识点,主要关注JAX-RS和CXF的集成,以及如何利用xsd文件来增强IDE的配置提示。 JAX-RS(Java API for RESTful Web Services)是Java平台上的一个标准,用于创建...
开发JAR包集合-cxf/dom4j/jaxb/json/jta/jxl 解压文件得到如下jar包 cxf-2.2.8.jar dom4j-1.6.1.jar ehcache-core-2.2.0.jar jaxb-api-2.2.jar jaxb-impl-2.2.jar json-lib-2.4-jdk15.jar json-lib-ext-...
在IT行业中,CXF是一个广泛使用的开源框架,主要用于构建和开发Web服务。它不仅支持SOAP,还支持RESTful API,提供了强大的服务实现和消费能力。本篇将详细讲解如何使用CXF来集成Web Service接口到一个Web项目中,...
Webservice接口,Cxf写的客户端, 是java项目,直接main方法运行. 开发环境:32位jdk1.7+Cxf3.1.4+tomcat7, 开发工具:myeclipse8.5. 成功访问服务端,并传送参数。测试通过。
1)参考: ...2)CXFWS工程是基于WS-Security规范,实现X.509身份验证的,同时实现签名和加密 keytool 工具的使用参考 http://hi.baidu.com/qianshuifanchuan/blog/item/6291b8510009ad3c42a75b8e.html ...
2.在cmd中输入wsdl2java http://localhost:8080/cxf_spring_service/mm/cxf?wsdl报wsdl2java不是内部命令,需要配置path环境变量为D:\workspace\apache-cxf-3.2.1\bin和cxf_home变量为D:\workspace\apache-cxf-3.2.1...
集成soapUI快速生成客户端,CXF 继承了 Celtix 和 XFire 两大开源项目的精华,提供了对 JAX-WS 全面的支持,并且提供了多种 Binding 、DataBinding、Transport 以及各种 Format 的支持,并且可以根据实际项目的需要...
### CXF实现SSL安全验证 在现代网络应用中,安全通信是至关重要的。Apache CXF 是一个开源项目,提供了一套强大的工具和服务框架,用于构建和开发基于标准的服务(如 Web Services)。本文将详细介绍如何使用 CXF ...
在CXF中,你可以通过WSDL来生成客户端的Stubs,这些Stubs提供了与服务交互的API。在这个Demo中,客户端开发者将使用WSDL文件来获取服务的元数据,从而创建对应的客户端代理对象,进而调用服务端的方法。 在CXF中,...
使用cxf webservice时容易出现的异常
<import resource="classpath:META-INF/cxf/cxf.xml"/> <import resource="classpath:META-INF/cxf/cxf-extension-soap.xml"/> <import resource="classpath:META-INF/cxf/cxf-servlet.xml"/>
"cxf使用中编码问题"这个主题聚焦在如何在CXF环境中解决与GBK等特定编码相关的困扰。 首先,我们需要理解编码的本质。在计算机系统中,字符编码是用来表示文本的一种方式,如ASCII、GBK、UTF-8等。GBK是中国大陆...
CXF实例以及全面讲解(附带开发工具包:part1、part2、part3)请大家分别下载
- 在 Karaf 控制台输入命令 `feature:repo-add mvn:org.apache.cxf.karaf/apache-cxf/xx.xx.xx/xml/features`,其中 `xx.xx.xx` 需替换为实际的 CXF 版本号。 2. **查看 Feature Repositories**: - 输入命令 `...
<import resource="classpath:META-INF/cxf/cxf-extension-soap.xml"/> <import resource="classpath:META-INF/cxf/cxf-servlet.xml"/> <!-- 配置服务发布 --> ...
- **Message**:CXF中的消息模型,用于封装服务交互中的数据。 3. **3.2.4版本的特点**: - **性能优化**:此版本可能包含了对性能的提升,比如更快的序列化和反序列化速度,以及更高效的内存管理。 - **API稳定...
<import resource="classpath:META-INF/cxf/cxf-extension-soap.xml"/> <import resource="classpath:META-INF/cxf/cxf-servlet.xml"/> <!-- 定义服务Bean --> ...
<import resource="classpath:META-INF/cxf/cxf-extension-soap.xml"/> <import resource="classpath:META-INF/cxf/cxf-servlet.xml"/> <cxf:bus> <cxf:features> <cxf:logging/> </cxf:features> </cxf:...
此外,理解数据绑定和消息交换模式(如RPC/Encoded、Document/Literal等)也是重要的一步。 在RESTful服务的实现中,CXF支持JAX-RS标准,使得创建RESTful服务如同编写普通的Java方法一样简单。开发者会学习如何使用...