我有一个在websphere WAS 6.1 (在IBM RSA下)运行的Web应用程序。
它由两个EAR 组成,每个都有一个Web模块(WAR)。
该应用程序有一个菜单,该菜单是在xsl + xsql解析时加载的。
如果我们以正常模式启动服务器,则菜单未正确加载,但是当我们以调试模式启动服务器时,菜单是装好了。
有人有任何可能发生的事情的线索吗?
由于
答案 0 :(得分:2)
WebSphere Application Server在正常模式和调试模式下使用不同的XML引擎,听起来您发现它们之间存在差异。您应该仔细检查您的代码是否遵循javadoc(即,您没有对未定义的行为执行某些操作),如果情况不是这样,请考虑与IBM打开PMR以解决问题正常或调试模式(可能是调试模式也应该失败......)。或者,考虑升级到更新的版本; 6.1已经过时了,您的问题可能会在以后的产品版本中修复。
答案 1 :(得分:1)
问题解决了,
在类路径中,有一个名为xmlparserv2.jar的库,带有“有问题”的xslt处理器(基于javax.xml.transform)。
将其从项目中删除,即可。
现在,其他库执行xslt转换(在org.apache.xalan.xslt的基础上)。
这篇文章给了我很多帮助:javax.xml.transform是什么处理器使用?