Websphere 7小版本不同导致的JAXP兼容性问题

反激变压器反射电压详解 我以前做过隔离式的POE模块,其电路实际就是个反激式开关电源。只不过其输入电压范围比较低,为44V-57V。 电路如下图,就是个flyback。 可以看到,电路中有个钳位电路,用来抑制电压尖峰,就在初级线圈那里。 问题 抑制尖峰通常有2种电路,一种叫RCD钳位,另外一种是用TVS管+二极管钳位。 这两种实际中都有用,今天我不想讨论它们的区别,只想说明一个问题: 为什么不能只用一个二极管搞定?像继电器电路那样?不也能抑制尖峰吗? 答案自然是不行的... 阅读详情

Websphere 7小版本不同导致的JAXP兼容性问题

 

Java, javaEE,  web,  xml,  Xerces,  Websphere, 应用服务器, JAXP

 

         开发JAVAEE 应用的技术人员或多或少都遇见过不兼容的问题,总结一下,最容易出现兼容性的无非是日志(common logging, LOG4J)和XML解析(JAXP/Xerces),因为这两个组件太常用以至于几乎所有的企业级组件都会直接或间接的依赖它们,当我们的WEB应用依赖的东西太多时,不可避免出现兼容性问题。很多WEB应用可以正常在TOMCATJBOSS上跑,可一上WAS就不能用了,其原因,大多是因为类路径中存在不同版本的依赖项,而不同组件依赖的又是不同版本,导致问题。下面我简单说一下最近同事出现一起兼容性问题的解决过程,供大家在解决同类问题时提供一些思路:

 

现象:同样的应用,WAR包未做更改,在WAS7.0.0.9上可以运行正常,但在7.0.0.12上运导致应用启动有错,异常原因是某个JAXP的某个类(好象是Node)缺少某个方法定义。

 

疑问的地方:WAS的小版本的升级也会导致不兼容,这在以前确实没有见过,以前在将TOMCAT应用移植到WAS时,由于WAS也提供了JAXP的相关包,但该包版本太低导致不兼容,当初是通过更改IBM JRE下面的jaxp.properties来解决,JAXP实现更改为我们需要的实现,但这次更改该文件不管事,还是出现同样的错误 。

 

怀疑点:还是怀疑生产环境里存在两个版本不同的JAXP,但即然已经指定了实现,为什么还会出问题呢?况且WAS的版本只有一些小变化,为什么会出现这么大的问题呢?另外一点,WAS是刚装的,并未对其做什么更改,最终将怀疑点锁定在我们提供的WAR包上。

 

过程:在开发环境寻找出现问题的类,果然找到两个版本的JAXP,其中一个有那个接口,一个没那个接口,它们分别名字:xml-apis.jar, xmlAPIS.jar,但实际都是JAXP接口包,这是开发人员由于引入第三方组件自动通过MAVEN加上去的。去掉低版本的包,再部署,问题得到解决。

 

后续:如果去掉该包导致第三方其它组件有问题,那没办法,只能更换那个第三方组件的版本,让它兼容我们现在的JAXP

 

原来:当类路径中存在多个版本的类时,先加载哪个类是不可预测的,对于不同的JRE,文件结构等都有可能不一样,在本案中,7.0.0.9上加载了高版本的类,而在7.0.0.12上却加载了低版本的类,所以导致问题。

9、WebSphere Studio与J2EE技术全解析 本文详细解析了WebSphere Studio Application Developer中的数据库脚本操作与J2EE技术的核心内容。涵盖SQL资源的定义、生成与应用,数据库查询方法,以及J2EE平台的组件、标准服务和容器机制,帮助开发者掌握企业级应用开发的关键技能。 阅读详情

相关推荐

深度强化学习 | 基于SAC算法的移动机器人路径跟踪(附Pytorch实现)

软性演员-评论家(Soft Actor-Critic, SAC)算法是基于最大熵原理的离线策略方法,本节将基于深度强化学习中的SAC算法实现移动机器人的路径跟踪,介绍网络设计、动作空间设计和奖励函数设计,并提供Pytorch实现加深理解

FRIGIDWINTER的博客 5669

WebSphere 7上的Metro – com.ibm.xml.xlxp2.jaxb.JAXBContextImpl不兼容异常

问题 通过Metro 2.0.1( webservices-rt.jar )开发了SOAP Web服务,通​​过jaxws-spring-1.8.jar与Spring集成并部署在WebSphere Application Server (WAS)版本7.0.0.13上。 请参阅下面的Web服务: 文件:UserWS.java package com.mkyong.user.ws; /...

一名可爱的技术搬运工 505

镁光的NAND Flash数据手册包

镁光的NAND Flash数据手册包,包含:____2d SLC(M61A;M62B;M71M;M73A;M84A;M84C);____2d MLC(L62A;L63B;L74A;L83A;L84A;L84C;L85A;L95B);____3d SLC_MLC(L06B.zip

JPA 与 Websphere兼容性问题解决方案

JPA 与 Websphere兼容性问题解决方案                            李俊杰 概述 考虑到OR映射的产品多样化,为了更富有柔性化的设计,我们的产品采用JPA作为Persistence layer的持久化技术,hibernate3.2(hibernate3.2才支持JPA),spring2.0作为IOC和AOP的工具。产品的运行环境为Websphere6.1(因为...

333

吐槽下websphere兼容

这两天在进行系统迁移的时候,源系统使用的websphere版本是6.1.0.29 ,新的系统使用的websphere版本是6.1.0.0,然后就出现莫名其妙的问题了。 [code="java"] javax.servlet.ServletException: No function is mapped to the name "fn:contains" [/code] 几经测试,谷歌多次...

mush_me的专栏 254

JDK中JAXP寻找XML解析器的顺序

[转自:追求->Permalink的 星期三 2007年03月28日]工作中,使用JAVA的JAXP读取解析XML文件中,就碰到了一件奇件的事。在Web工程中,调试发现JAXP实际使用的是Xerces解析器,可是,当将工程中的一个小Swing工具,与Web使用一样的jar包,打成一个可执行的jar包时,调试却发现JAXP实际使用的是Crimson解析器,还会发现解析XML文件时出现错误,经过分

随想,随记 3816

Websphere上,使用axis做成的客户端调用Webservice需要进行的配置

按照以下路径打开文件: WebSphere/AppServer/java/jre/lib/jaxp.properties,将最后三行的注释打开:修改前:#javax.xml.transform.TransformerFactory=org.apache.xalan.processor.TransformerFactoryImpl#javax.xml.parsers.SAXParserFac

Anssin007的专栏 1955

Start to use JAXP

Start point of Dom in JAXP: DocumentBuilderFactory, Start point of SAX in JAXP: SAXParserFactory

wangbbs的专栏 411

websphere 7.0 控制台中的企业服务启动失败 ( 尝试处理服务器 server1 时发生异常 )

(  C:\IBM\WebSphere7.0\AppServer\profiles\Dmgr01\logs\server1\startServer.log ) [12-2-17 8:27:46:694 CST] 00000000 AdminTool     A   ADMU0128I: 正在启动具有 Dmgr01 概要文件的工具 [12-2-17 8:27:46:695 CST] 000000

nick xu 2928

IBM AIX Websphere jdk1.4 下 can't declare any more prefixes in this context 问题的解决过程

/IBM/WebSphere/AppServer/java/jre/lib/目录下增加 三个架包xercesImpl.jarxalan.jarxml-apis.jar建立文件jaxp.properties内容如下:javax.xml.transform.TransformerFactory=org.apache.xalan.processor.TransformerFa

HouYing 1848

WebSphere发布CXF注意事项

在CXF官网搜索到的: https://cwiki.apache.org/confluence/display/CXF20DOC/Application+Server+Specific+Configuration+Guide#ApplicationServerSpecificConfigurationGuide-Websphere Websphere Currently, I've o...

hjs0512 227

部署WebSphere的Java EE应用

文章关键字:|WebSphere|Java EE应用|J2EE|编程|接口|数据|资源|   J2EE应用的部署对于部署人员而言是一件很有意义的事情。现有的应用服务器一般都支持基于Web,或热部署,或通过部署工具的方式来完成应用的部署。WebSphere Application Server 5.x提供了应用编程接口实现J2EE应用的部署和管理。   一、WebSphere部署概述 ...

iteye_3992的博客 259

【原创】websphere部署war包报错

应用程序在Tomcat上运行一切正常,但在websphere上部署时报以下错误:错误 500处理请求时发生一个错误: /admin/upload.do消息: WEB-INF/web.xml详细错误信息为:com.ibm.etools.archive.exception.DeploymentDescriptorLoadException: WEB-INF/web.xml嵌套异常的堆栈跟踪:com.i...

weixin_34161083的博客 896

对POWER7WebSphere Commerce 部署的提示和最佳体验

运行最新版 AIX。完整的 P7 模式至少需要 V6.1.5.1 版本。在 AIX 的早期版本中,只能使用 P6 兼容模式的性能,其中性能差距最大为 30%。我们推荐您使用最新版本的 AIX 操作系统(本文编写时最新版本为 7.1)。 设置合适的 LPAR 以避免跨越多个芯片插槽边界。当规划部署时,首先要决定您的插槽数。要查询您的模型技术文档确定这个数量。它可能是 4、6 或 8 个内核。一旦您

yefengwuhen2012的专栏 470

WebSphere7.0安装war包时报错

工具:WebSphere7.0,MyEclipse8.5 问题:使用MyEclipse8.5开发web应用,导出成war包后安装部署在WebSphere7.0上时报错。异常提示:错误EAR 文件可能已损坏和/或不完整。确保应用程序处于 WebSphere(R) Application Server 当前版本的兼容 Java(TM) Platform, Enterprise Edition(Jav...

Alex的博客 1393
上一篇: 科学历史也可以写的如此精彩 ——《量子物理史话:上帝掷骰子吗》读后感
下一篇: 无限的童年回忆---赣州人的童年
mudboy
博客等级 码龄25年 15粉丝 84原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值