【问题标题】:How do I query the version of Xerces at runtime for an app deployed to JBoss 7.2?如何在运行时查询部署到 JBoss 7.2 的应用程序的 Xerces 版本?
【发布时间】:2014-04-01 16:36:57
【问题描述】:

通常您可以使用 org.apache.xerces.impl.Version.getVersion() 查询 Xerces as documented here 的版本。由于 ClassNotFoundException,这在 JBoss 下的运行时不起作用:

代码:

Class.forName( "org.apache.xerces.impl.Version" )

输出:

java.lang.ClassNotFoundException: org.apache.xerces.impl.Version from [Module "deployment.tep-web-services.war:main" from Service Module Loader]
org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:190)
org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:468)
org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:456)
org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:398)
org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:120)
org.codehaus.groovy.runtime.callsite.CallSiteClassLoader.loadClass(CallSiteClassLoader.java:51)

JBoss 7.2下Version类的运行时位置在哪里?

【问题讨论】:

    标签: java jboss xerces


    【解决方案1】:

    我在$JBOSS_HOME/server/modules/system/layers/base/org/apache/xerces/main 中找到了我的 Xerces jar,但我不确定这是否是“标准”。它确实包含一个org.apache.xerces.impl.Version 类。我不知道为什么你不能用 JBoss 的Class.forName() 加载它...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-12-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-06
      相关资源
      最近更新 更多