2天之前,我真的是一点都没有接触过webservice程序,直接造成了昨天的悲剧
昨天,由于项目中用到了CXF发布webservice应用,客户最终要部署要was7上面.
使用的CXF版本是2.4.1,在tomcat下测试都好好的,发布到was7上面就开始报错:
java.lang.IncompatibleClassChangeError: org.apache.neethi.AssertionBuilderFactory
java.lang.IncompatibleClassChangeError: org.apache.neethi.AssertionBuilderFactory
上网一查,说CXF与was7不兼容,要改....先冒一身冷汗,于是按照很多人网上所说的方法,改包,删包,往endorsed目录下塞包,修改was上面的虚拟机类加载机制,都试了个试,结果一个都没用....
期间由于更改类加载顺序,还引起了启动servlet根本无法被加载的问题
整个下午一直晕到死...
到了晚上,上面下了死命令,今天必须把兼容性搞定...实在没办法,根据有人给出的链接,到官网上查了一下,was7专门针对axis2与cxf的不兼容给出了解决方案.并且给出了一个测试war(ear)包,于是顶着3g上网卡超流量的风险,下载了30M的cxf测试ear包,发布到was7上,居然人家就可以发布成功!而我自己写的helloworld按照它官网给出的解决方案居然发布失败..
于是怒了,看了下人家的版本.是cxf2.1.3的,我用的是2.4.1的,不管了,改...
除了更换了CXF版本外,还在打出的war包的manifest.mf文件中增加了一行:
Manifest-Version: 1.0
DisableIBMJAXWSEngine: true
Class-Path:
最后晚上10点半发布测试,成功搞定...Oh,My God, 赶紧打的走人,晚上还要赶回另外一个地点查找账务问题...悲催啊
IBM 官方链接为:
http://www.ibm.com/developerworks/websphere/library/techarticles/1001_thaker/1001_thaker.html
其中例子ear包就不在此上传了,,有22M, 只传pdf文档好了, 流量不多了...
分享到:
相关推荐
确保CXF相关的JAR文件不与WebSphere自带的JAR文件冲突,避免在类路径中重复包含相同库。可以通过WebSphere的管理控制台调整类加载顺序,例如设置“parent last”策略,让WebSphere优先使用应用的类。 2. **...
在websphere8.5 下部署含有CXFwebservice的war包无法正常启动,...归根结底原因不是找不到类,而是发布后war下的jar与websphere自身平台下的jar冲突了,要解决此问题就要通过在websphere下建立共享库来根除,可参考附件
- 针对Oracle OC4J,需要特别处理stax-api的兼容性问题以及替换Oracle XML解析器为Xerces。 - 清除Oracle提供的JAX-WS库,使用CXF自带的相关库替代。 - **部署过程** - 根据所使用的应用服务器类型,按照特定...
was不支持高版本的cxf,此版本的可以比较容易得到webSphere的兼容
此外,CXF还强调易用性,提供了简洁的API和Maven插件简化集成,与Spring框架的无缝集成也是其一大亮点。 在协议和数据绑定方面,CXF支持SOAP 1.1和1.2,以及WS-I Basic Profile、WS-Security等标准。它能处理WSDL ...
【WebService CXF详解与入门】 WebService是一种允许不同系统之间进行通信和交互的标准协议,它基于HTTP协议,使得应用程序可以无视具体实现细节地调用互联网上的服务。这种技术使得分布式应用程序的发展成为可能,...
CXF 可以通过 HTTP、Servlet、JMS 等多种方式进行数据传输,并且能够灵活部署到轻量级容器(如 Tomcat)或 J2EE 应用服务器上,如 Geronimo、JOnAS、JBoss、WebLogic 和 WebSphere。 CXF 提供了广泛的编程语言支持...
不过,需要注意的是,CXF可能与某些特定JDK版本或应用服务器(如WebSphere AS 6.1.1)存在兼容性问题。比如,可能会遇到`java.lang.IncompatibleClassChangeError`,这通常是由于不同版本的jar包冲突导致的。解决...
CXF提供了丰富的编程工具,包括但不限于从Java到WSDL、从WSDL到Java、从XSD到WSDL、从WSDL到XML、再到SOAP和service的转换工具,极大地简化了开发流程,提高了开发效率。 #### HelloWorld示例详解 以一个简单的...
3. **传输方式、绑定与数据绑定**: - 绑定:支持 SOAP 和 REST/HTTP。 - 数据绑定:支持 JAXB 2.x, Aegis, XMLBeans, SDO 等。 - 传送数据格式:支持 XML, JSON, Fast Infoset 等。 - 传输方式:支持 HTTP, ...
- 在 WAS 6.1.1 上部署 CXF 时可能会遇到与特定 JAR 包版本的兼容性问题。解决方案通常涉及替换或升级相关 JAR 包。 #### 三、XFire 方式 **1. 概述** - XFire 是一款轻量级的 WebService 框架,以其简洁性和...
然而,在某些情况下,可能会遇到 CXF 与特定环境(如 WebSphere 6.1.1)的兼容性问题。这些问题通常出现在特定的 JAR 包上,比如 “wsdl4j-1.6.2.jar”。 **解决方法:** - **创建 WAS 共享库:** 将有问题的 JAR ...
- **构建和部署Axis2和CXFWebService应用**:详细介绍了如何构建Axis2和CXF应用,以及部署过程中可能遇到的常见问题和解决方法。 - **使用第三方JAX-WS运行时的限制和问题**:强调了使用第三方JAX-WS运行时部署应用...
本书由David Dossot和John D'Emic共同撰写,旨在帮助开发者掌握Mule的核心功能与配置技巧,通过丰富的示例,展示了如何在实际项目中运用Mule进行高效的数据传输与处理。 ### 核心概念:Mule的解构 #### ESB与EAI...
在描述中提到,开发者之前尝试使用CXF发布Web服务,但由于与IBM Websphere应用服务器存在兼容性问题,因此转向了Xfire。这可能是因为Xfire在当时的某些环境下更易于配置和集成,或者其API与Websphere的交互更为顺畅...
这些文件包括但不限于: - `D:\IBM\CXF\jaxb-api-2.1.jar` - `D:\IBM\CXF\jaxb-impl-2.1.9.jar` - `D:\IBM\CXF\wsdl4j-1.6.2.jar` - 操作时需要注意,不同类文件的路径应该使用分行来分割。 - **拷贝类路径文件...