CXF发布webservice在tomcat中没问题。
部署在Websphere中,直接访问WebServices没有问题,在访问?wsdl时出问题,问题出在wsdl4j-1.6.2.jar上面,也是ClassLoader的问题。
在网上搜到了 http://topic.csdn.net/u/20081025/17/3a60662f-a7aa-4454-a737-0a2863c7dda4.html
这里引用一下
建议用第二种
put jar in the endorsed folder
put the wsdl4j-1.6.1.jar in the $WebSphere_HOME/java/jre/lib/endorsed folder.
In the WebSphere console, find the specific enterprise application, click the "Class loading and update detection".
Mark the "Classes loaded with application class loader first" selected.
Mark the "Class loader for each war file in application" selected.
And then restart the Websphere server. (Because we changed the endorsed folder, we need to restart it to make it take effect).
Please make sure your classpath doesn't have the servlet-2.5 library, since WebSphere6.1 is servlet-2.4 compliant!
Add your own class loader
If you put your wsdl4j-1.6.1 jar in $WAS_HOME/java/jre/lib/endorsed, all your applications will depend on your version of wsdl4j. Another solution is to create a new class loader in your server which loads before parent class loader, create a shared library with your version of wsdl4j, and add this shared library to your new class loader. This version of wsdl4j will only be available for your specific server and not affect applications running in other servers.
Step by step
In the WAS console navigate to Environment > Shared Libraries
Select the scope you wish your library should be visible in
Click New and set values ex: name=MYAPP_SHARED_LIB, classpath=PATH_TO/wsdl4j-1.6.1.jar and Save
Navigate to Application servers > [your server name] > Java and Process Management > Class loader > New
Select Classes loaded with application class loader first and Save
Select your new class loader and click Shared library references
Add your shared library (MYAPP_SHARED_LIB) Save and restart your server.
Tested in WAS 6.1 only but should work in earlier versions as well.
分享到:
相关推荐
<servlet-class>org.apache.cxf.transport.servlet.CXFServlet <load-on-startup>1 <servlet-name>CXFServlet <url-pattern>/services/* ``` 3. **JAX-WS和JAX-RS支持**:CXF支持JAX-WS(Java API for ...
webservice CXF 报错:java.lang.NoClassDefFoundError: org/apache/neethi/builders/AssertionBuilder 需要用到此jar文件 通过apache官网可获得。 文件位置\apache-cxf-2.7.13\lib
4. **配置文件**:如cxf.xml,用于配置CXF的行为和设置。 要开始使用Apache CXF 2.0.10,开发者需要解压此压缩包,将库文件添加到项目中,然后根据自己的需求配置CXF并编写相应的服务或客户端代码。需要注意的是,...
7. **Apache CXF**:Apache CXF是一个开源框架,支持JAX-WS和JAX-RS标准,提供了一套完整的工具链来创建、部署和管理Web服务。 8. **Spring Web Services**:Spring框架提供了Spring Web Services模块,专注于创建...
【CXF3.1.10.jar】是一个与Apache CXF相关的Java库文件,它包含了CXF框架在3.1.10版本的所有组件和功能。Apache CXF是一个开源服务框架,它允许开发者构建和消费Web服务。这个jar包是开发人员在使用CXF框架时所必需...
这样,当你在编写如`cxf.xml`或`spring-context.xml`这样的配置文件时,IDE就能识别出CXF的特定标签,并提供相应的代码提示。 例如,一个简单的CXF JAX-RS配置可能会如下所示: ```xml <beans xmlns="http://www....
spring 4.2.0 集成的cxf3.1.18的jar包,cxf-core-3.1.18.jar、cxf-rt-bindings-soap-3.1.18.jar、cxf-rt-databinding-jaxb-3.1.18.jar、cxf-rt-frontend-jaxws-3.1.18.jar、cxf-rt-frontend-simple-3.1.18.jar、cxf-...
s.addLocation(StaxUtils.java:1038) at org.apache.cxf.staxutils.StaxUtils.startElement(StaxUtils.java:893) at org.apache.cxf.staxutils.StaxUtils.readDocElements(StaxUtils.java:965) at org.apache.cxf....
<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"/>
Apache CXF是一个开源的Java框架,它主要用于构建和开发Web服务。这个"apache-cxf-2.7.7.zip"压缩包包含了CXF框架的2.7.7版本,这是一个在2013年发布的稳定版本。CXF是Apache软件基金会的项目,它集成了多种Web服务...
org.apache.cxf.spring.remoting.Jsr181HandlerMapping.jar
Apache CXF是一个开源的Java框架,它主要用于构建和开发服务导向架构(SOA)和Web服务。这个"apache-cxf2.7.rar"压缩包包含了Apache CXF 2.7.2版本的相关文件,该版本在当时是一个稳定且广泛使用的版本。在解压后,...
CXF restful的许多异常java.lang.NoClassDefFoundError: javax/ws/rs/MessageProcessingException.需要javax.ws.rs-api-2.0-m10.jar
CXF 2.7.1 全量包是一款基于Java的开源服务框架,它主要用于构建和部署Web服务。CXF这个名字来源于"Confusing eXtensible Framework"的缩写,随着时间的发展,它已经成为了功能丰富的服务框架,为开发人员提供了一...
在使用Idea根据wsdl自动生成java code的时候;抛出无法找到主类:org.apache.axis.wsdl.WSDL2Java(Throws Could not find main class: org.apache.axis.wsdl.WSDL2Java)。 添加本文的jar包压缩包解压出来的所有jar包...
xmlns:http="http://cxf.apache.org/transports/http/configuration" xmlns:jaxws="http://cxf.apache.org/jaxws" xsi:schemaLocation=" http://cxf.apache.org/configuration/security ...
1. **Apache CXF**:Apache CXF是一个开源的Java框架,用于构建和服务导向架构(SOA)应用程序。它支持多种Web服务标准,如JAX-WS和JAX-RS,使得开发者能够创建和消费Web服务。 2. **JAX-WS**:Java API for XML ...
标题中的"cxf3.1.2.zip"是一个包含Apache CXF 3.1.2版本的库文件集合,主要用于Java开发中的Spring-CXF Web服务。Apache CXF是一个开源框架,它提供了一种创建Web服务以及消费Web服务的方式,支持多种协议和标准,...
- 在服务器环境中,可以使用CXF的Servlet或Jetty容器来部署Web服务,通过修改`etc/cxf.xml`等配置文件进行定制。 - 客户端可以使用CXF的动态客户端API或者生成的Java客户端代码来调用服务。 6. **标签解析** ...