我们需要在我们耳边运行最新版本的Xalan / Serialize / Xerces jar文件。当我们运行应用程序代码并随后获取java.lang.NoSuchMethodError
时,首先加载Jboss的5.1 lib / endorsed目录中的版本。
我读过这样的文章:http://www.openscope.net/2010/07/15/setting-up-a-jboss-instance-v5-x-class-loading/
我已经将一个jboss-app.xml文件添加到我的meta-inf目录中,该目录已经打包到我的耳中。以下是我在那里停留的内容:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE jboss-app PUBLIC
"-//JBoss//DTD Java EE Application 5.0//EN"
"http://www.jboss.org/j2ee/dtd/jboss-app_5_0.dtd">
<jboss-app>
<loader-repository>
org.apache.xalan:archive=servicebroker-enterprise.ear
<loader-repository-config>
java2ParentDelegation=false
</loader-repository-config>
</loader-repository>
</jboss-app>
当我的代码到位时,我的耳朵没有加载到jboss中。我看到它找到耳朵,然后只是移动到其他耳朵而不加载它。我打开了调试日志记录,没有看到一个错误或提到它为什么没有加载。
为什么我的耳朵不会被装上?
答案 0 :(得分:0)
我建议你同步你的Xalan / Serialize / Xerces和JBoss的版本。 首先,尝试用新的替换JBoss,也许它会起作用。另一种方法是,考虑将JBoss升级到将使用最新Xalan / Serialize / Xerces的新版本。更改类加载过程的行为将向您介绍新问题,AFAIC。