主旨:
在CXF服务端配置WEB SERVICE时,通常会包含一些来此cxf.jar里面的XML文件,用于自动配置需要使用到的BEAN
例如:
1
<
import
resource
="classpath:META-INF/cxf/cxf.xml"
/>
2
<
import
resource
="classpath:META-INF/cxf/cxf-extension-soap.xml"
/>
3
<
import
resource
="classpath:META-INF/cxf/cxf-servlet.xml"
/>
但是在客户端配置的时候这些文件是不需要的,甚至配置会引发错误,详细的经过见下文。
经过:
今天在配置客户端的时候,步骤和内容都是和往常一样的,但是
出现一个NullPointerException 的错误,只知道这个错误是在创建客户端service的时候出的错,但是原因找不到。
错误堆栈:
Caused by: java.lang.NullPointerException
at org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpointInfo(AbstractWSDLBasedEndpointFactory.java:
160
)
at org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(AbstractWSDLBasedEndpointFactory.java:
102
)
at org.apache.cxf.frontend.ClientFactoryBean.create(ClientFactoryBean.java:
51
)
at org.apache.cxf.frontend.ClientProxyFactoryBean.create(ClientProxyFactoryBean.java:
97
)
at org.apache.cxf.jaxws.JaxWsProxyFactoryBean.create(JaxWsProxyFactoryBean.java:
89
)
at com.itravel.cxf.client.JaxWsProxyFactoryBean.create(JaxWsProxyFactoryBean.java:
25
)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
39
)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
25
)
at java.lang.reflect.Method.invoke(Method.java:
585
)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:
115
)
直到后来我单独加载了创建客户端service的applicationContext时,初始化是正常的,所以就怀疑配置文件出了问题;
当上面提到的几个被包含进来的文件的配置被删除后,一切就正常了。
页面报错:
java.lang.NoSuchMethodError: org.w3c.dom.Document.setXmlStandalone(Z)V
解决方法:换tomcat为5.5 OK
分享到:
相关推荐
webservice CXF 报错:java.lang.NoClassDefFoundError: org/apache/neethi/builders/AssertionBuilder 需要用到此jar文件 通过apache官网可获得。 文件位置\apache-cxf-2.7.13\lib
这样,当你在编写如`cxf.xml`或`spring-context.xml`这样的配置文件时,IDE就能识别出CXF的特定标签,并提供相应的代码提示。 例如,一个简单的CXF JAX-RS配置可能会如下所示: ```xml <beans xmlns="http://www....
Apache CXF是一个开源的Java框架,它主要用于构建和开发服务导向架构(SOA)和Web服务。这个"apache-cxf-3.3.3.zip"压缩包包含了CXF框架的3.3.3版本,这是一个重要的里程碑,因为它包含了在此版本之前的所有修复、...
<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-2.1.jar cxf-2.1.jar cxf-2.1.jar cxf-2.1.jar
Apache CXF是一个开源的Java框架,它主要用于构建和开发Web服务。这个"apache-cxf-2.7.7.zip"压缩包包含了CXF框架的2.7.7版本,这是一个在2013年发布的稳定版本。CXF是Apache软件基金会的项目,它集成了多种Web服务...
Apache CXF是一个开源的Java框架,它主要用于构建和开发Web服务。这个"apache-cxf-2.7.6.rar"文件包含的是Apache CXF 2.7.6版本的源码、库文件和其他相关资源。CXF这个名字是“Cocoon XML Framework”的缩写,起初它...
org.apache.cxf.spring.remoting.Jsr181HandlerMapping.jar
Apache CXF是一个开源的Java框架,它主要用于构建和开发服务导向架构(SOA)和Web服务。这个"**cxf-2.4.3.jar**"文件是CXF项目的一个特定版本,即2.4.3版本的归档包。在Java开发中,JAR(Java Archive)文件是一种...
4. **配置文件**:如cxf.xml,用于配置CXF的行为和设置。 要开始使用Apache CXF 2.0.10,开发者需要解压此压缩包,将库文件添加到项目中,然后根据自己的需求配置CXF并编写相应的服务或客户端代码。需要注意的是,...
标签“**cxf.jar**”是CXF库的一般术语,通常用来代表整个CXF框架的JAR文件,无论具体版本如何。在实际使用中,开发者可能会将CXF的核心库与其他必要的依赖项一起打包,以便于部署和使用。 在“**cxf-2.7.18及其...
cxf-2.2.3.jar
cxf-2.7.7.jar
Apache CXF是一个开源的Java框架,它主要用于构建和开发服务导向架构(SOA)和Web服务。这个"apache-cxf-2.4.6.zip"压缩包包含了CXF框架的2.4.6版本,这是一个相对早期的版本,发布于2012年。在深入探讨CXF之前,...
- 在服务器环境中,可以使用CXF的Servlet或Jetty容器来部署Web服务,通过修改`etc/cxf.xml`等配置文件进行定制。 - 客户端可以使用CXF的动态客户端API或者生成的Java客户端代码来调用服务。 6. **标签解析** ...
Apache CXF是一个开源的Java框架,它主要用于构建和开发Web服务。这个框架允许开发者通过SOAP、RESTful HTTP、XML以及各种协议来实现服务接口。在本案例中,我们讨论的是"apache-cxf-3.4.3.tar.gz",这是Apache CXF ...
cxf-3.2.1.jar 核心包,解决webservice开发的jar的冲突问题。
4. **配置文件**:可能包括一些默认的配置文件,如cxf.xml或cxf-servlet.xml,用于配置CXF的行为。 5. **源代码**:如果包含,这将有助于深入理解CXF的工作原理,并且对于进行自定义开发和调试非常有用。 在Apache...
Apache CXF是一个开源的Java框架,它主要用于构建和开发Web服务。这个名为"apache-cxf-2.7.3.rar"的压缩包包含了CXF框架的2.7.3版本,这是一个广泛使用的版本,提供了丰富的功能和良好的社区支持。在这个版本中,你...
Apache CXF是一个开源的Java框架,它主要用于构建和开发服务导向架构(Service-Oriented Architecture, SOA)和Web服务。"apache-cxf-2.7.10.jar"是Apache CXF的一个版本库,包含了CXF框架的核心功能组件。在2.7.10...