我们将BIRT运行时与我们的应用程序(EAR文件)捆绑在一起,并且直到最近我们使用的版本2.2都可以正常运行。但是,当我们升级到BIRT 2.5.1时,我们遇到了类加载问题。BIRT的类加载问题
BIRT运行时打包了一个xerces.jar文件,该文件是类加载冲突的根本原因,因为java ext类路径中存在另一个xerces.jar文件。简单的解决方案应该是去除与BIRT运行时打包在一起的xerces.jar文件,并让BIRT从父类加载器层次中拾取xerces类。但是,如果我从BIRT运行时插件目录中删除xerces.jar文件,报告会失败,但这似乎不会发生。
为了给你多一点信息我的应用程序结构
EAR
- 应用类
- WAR
---- WEB-INF
------平台(BIRT)
--------插件(BIRT)
有没有办法强制BIRT从父类加载器的xerces.jar文件中加载所需的类?
在此先感谢。