`

使用Cxf 做的服务器中调用时的一个异常解决

阅读更多

 

异常如下
Caused by: org.apache.cxf.binding.soap.SoapFault: "http://schemas.xmlsoap.org/wsdl/", the namespace on the "definitions" element, is not a valid SOAP version. 
at org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(ReadHeadersInterceptor.java:131) 
at org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(ReadHeadersInterceptor.java:60) 
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:255) 
at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:755) 
at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:2330) 
at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:2192) 
at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:2036) 
at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56) 
at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:696) 
at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62) 
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:255) 
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:516) 
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) 
... 145 more 
 
 
 
搜了半天最后是因为
调用时使用的是这种方式:
JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
factory.setAddress(http://192.168.0.121:9090/cloudsun/HelloWorldService?wsdl);

 

而正确的方式是使用

cxf命令生成的java代码才可以,如

 

 

HelloWorld hello = new HelloWorld_Service().getHelloWorldImplPort();

 

 

本文已在之处解决的方法,没有关于介绍有关cxf使用webservice的详细介绍!

 

www.ibuyincn.com

分享到:
评论

相关推荐

    cxf 开发webservice与调用demo

    CXF(CXF: Composite eXtensible Framework)是一个开源的Java框架,用于构建和服务导向架构(SOA)中的Web服务。本教程将深入讲解如何使用CXF开发Web服务并进行调用,主要关注CXF的核心功能以及如何在实际项目中...

    CXF使用EndpointImpl发布WebService加入拦截器

    在Java世界中,Apache CXF是一个广泛使用的开源框架,它允许开发者创建和消费Web服务。在Web服务开发中,拦截器扮演着至关重要的角色,它们提供了在消息发送和接收过程中插入自定义逻辑的能力。本篇文章将深入探讨...

    10.为CXF服务器端添加自定义拦截器进行权限检查

    前者在消息处理之前调用,后者在处理过程中发生异常时调用。在`handleMessage`方法中,我们可以编写权限检查的代码。 2. **实现权限检查逻辑**: 在拦截器中,我们需要获取请求中的用户信息,这可能来自于HTTP头、...

    使用CXF发布Rest服务

    在Java开发中,Apache CXF是一个广泛使用的开源框架,用于构建和部署Web服务。本教程将详细介绍如何利用CXF 2.3.3版本来发布RESTful服务,并在客户端进行调用。首先,我们需要理解CXF的核心概念及其在RESTful服务中...

    cxf最少jar包,包含服务器端和客户端

    CXF(CXF: Composite eXtensible Services Framework)是一个开源的Java框架,它提供了用于构建和服务导向架构(SOA)的应用程序。CXF允许开发者使用多种标准和非标准的协议来实现服务,如SOAP、RESTful HTTP、WS-*...

    client cxf

    CXF客户端是该框架的一部分,用于与由CXF服务器端点提供的服务进行交互。在这个主题中,我们将深入探讨CXF客户端的使用、配置以及常见功能。 一、CXF客户端介绍 CXF客户端提供了多种方式来调用Web服务,包括基于JAX...

    08.CXF拦截器的理论以及如何为CXF的客户端和服务器端添加拦截器

    拦截器是CXF框架中的一个重要组成部分,允许开发者在服务调用的生命周期中插入自定义逻辑,实现如日志记录、安全检查、性能监控等功能。本篇将深入探讨CXF拦截器的理论基础,并演示如何为CXF的客户端和服务端添加...

    spring集成cxf客户端和服务器端demo

    总之,“spring集成cxf客户端和服务器端demo”项目为我们提供了一个基础的框架,用于理解如何在Spring环境中使用CXF开发和消费Web服务。通过实践这个示例,开发者能够掌握这两款工具的整合技术,从而在实际项目中更...

    springBoot完整整合WebService框架CXF示例

    SpringBoot与CXF整合是构建基于Web服务的应用程序的一个常见实践。CXF是一个开源的Java框架,用于构建和开发服务导向架构(SOA)应用程序,它支持SOAP和RESTful服务。SpringBoot则简化了Spring应用的初始化和配置,...

    apache-cxf-3.5.0.zip

    总之,Apache CXF是一个强大的Web服务框架,提供了全面的工具和API,使得开发人员能够轻松创建和维护复杂的Web服务。通过深入理解和实践"apache-cxf-3.5.0.zip"中的内容,开发者可以更好地利用CXF构建高效、健壮的...

    CXF拦截器(Interceptor)的使用

    Apache CXF是一个开源框架,用于构建和消费基于SOAP和REST标准的Web服务。其设计的核心目标之一便是灵活性和可扩展性,这在很大程度上得益于其拦截器机制。拦截器允许开发者在请求和响应的消息传递过程中插入自定义...

    webservice cxf 服务端客户端传递参数的例子demo

    CXF是一个Java框架,它允许开发者通过简单的API来创建和使用Web服务。CXF支持多种Web服务标准,如WS-I Basic Profile、WS-Security等,并且可以与Spring框架无缝集成。它提供了SOAP和RESTful两种服务模式,使得...

    CXF利用Json格式传输对象

    对于CXF客户端,可以使用`javax.ws.rs.client.ClientBuilder`创建一个客户端实例,然后通过`target()`方法指定服务地址,`register()`方法注册JSON处理类,最后调用`invoke()`方法发起请求并获取JSON响应。...

    CXF+SPRING例子

    4. **异常处理**:在调用远程服务时,可能会遇到网络问题或服务端异常,因此客户端需要适当地处理这些异常。 此示例项目虽然注释不够详细,但通过运行和调试,你可以深入理解CXF和Spring如何协同工作,这对于学习和...

    CXF客户端启动过程

    【标签】:“源码”提示我们可以深入到CXF的源代码层面去探究其实现细节,而“工具”则表明CXF是一个实用的开发工具,可以帮助我们快速构建和使用Web服务。 【压缩包子文件的文件名称列表】: - "新建 Microsoft ...

    03.使用CXF开发WebService客户端

    Apache CXF是一个流行的开源框架,用于构建和开发Web Service客户端和服务器端。本教程将详细讲解如何使用CXF来开发一个Web Service客户端。 一、CXF简介 Apache CXF是一个强大的开放源码服务框架,它支持多种协议...

    用cxf开发webservice

    Apache CXF是一个强大的开源框架,专门用于构建和实现Web服务。它遵循Java Community Process (JCP)和Web服务的相关标准,使得开发面向服务架构(SOA)的应用变得更加简单和高效。CXF支持多种模型,包括JAX-WS(Java...

    cxf-core-3.2.4_cxf_源码

    2. **Service**:服务是CXF中的高层次抽象,它代表了一个业务逻辑的集合,可以被不同的协议(如SOAP或REST)暴露和消费。 3. **Endpoint**:端点是服务的具体实例,它知道如何处理特定的地址和消息格式。端点包含了...

    CXF框架发布webservice

    6. **异常处理**:通过Spring的AOP和CXF的异常映射机制,可以统一处理服务调用中的异常,返回合适的错误信息。 学习这些内容后,开发者将能够熟练地使用CXF框架和Spring框架来构建和发布高质量的Web服务,同时也能...

    cxf WebService

    在CXF中,服务通常被部署为一个Java EE的Servlet,可以通过Tomcat或Jetty等应用服务器运行。服务启动后,可以通过SOAP或REST请求进行调用。 5. **CXF与Spring集成**:CXF可以很好地与Spring框架集成,通过Spring...

Global site tag (gtag.js) - Google Analytics