提前感谢您提供的任何帮助:
我正在 JBoss 5.0.1 GA 上开发 EJB 3 应用程序。我正在部署的应用程序已经运行了几年,没有任何问题。但是最近我一直在升级一些功能,并且我不得不更新我的主要 EJB 模块 (MyEJB.jar) 使用的库之一。它实际上来自第三方,因此我无法完全控制该库,我们将其命名为 foo.jar。所以 MyEJB.jar 使用 foo.jar 作为库,并且已经成功地这样做了一段时间。第三方更新了 foo.jar,现在当我部署时,JBoss 报告此错误: 安装到 PostClassLoader 时出错:name=vfsfile:/opt/jboss/jboss-5.1.0.GA/server/default/deploy/MyEJB。 jar/ state=ClassLoader mode=Manual requiredState=PostClassLoader org.jboss.deployers.spi.DeploymentException: 无法处理元数据
在堆栈跟踪中的此错误下方,我看到以下内容似乎是问题的根本原因:Caused by: java.lang.ClassNotFoundException: Foo from BaseClassLoader@68b9ec2b{VFSClassLoaderPolicy@64030c4{name=vfsfile:/opt/jboss/ jboss-5.1.0.GA/server/default/deploy/MyEJBjar/ domain=ClassLoaderDomain@df1cbf6{name=DefaultDomain parentPolicy=BEFORE parent=org.jboss.bootstrap.NoAnnotationURLClassLoader@4383f74d} 根=[MemoryContextHandler@16 14911248[path= context=vfsmemory://5c4o01b-7nn4aj-go4u51sb-1-go4u5c2j-24 real=vfsmemory://5c4o01b-7nn4aj-go4u51sb-1-go4u5c2j-24], FileHandler@1915014350[path=MyEJBjar context=file:/opt/ jboss/jboss-5.1.0.GA/server/default/deploy/real=file:/opt/jboss/jboss-5.1.0.GA/server/default/deploy/MyEJBjar/], DelegatingHandler@1308762861[path=G org.snmp4j.smi, net.sf.json.regexp, 包缓存, org.snmp4j.security,net.sf.json, META-INF, net.sf.json.groovy, com.mycompany.util.clipgeneration] NON_EMPTY}} at org.jboss.classloader.spi.base.BaseClassLoader.loadClass(BaseClassLoader.java:448)在 java.lang.ClassLoader.loadClass(ClassLoader.java:248) 在 org.jboss.deployment.OptAnnotationMetaDataDeployer.processJBossClientMetaData(OptAnnotationMetaDataDeployer.java:115) 在 org.jboss.deployment.OptAnnotationMetaDataDeployer.processMetaData(OptAnnotationMetaDataDeployer.java:82) 在org.jboss.deployment.AnnotationMetaDataDeployer.deploy(AnnotationMetaDataDeployer.java:177) ... 32 更多java:248) at org.jboss.deployment.OptAnnotationMetaDataDeployer.processJBossClientMetaData(OptAnnotationMetaDataDeployer.java:115) at org.jboss.deployment.OptAnnotationMetaDataDeployer.processMetaData(OptAnnotationMetaDataDeployer.java:82) at org.jboss.deployment.AnnotationMetaDataDeployer.deploy(AnnotationMetaDataDeployer .java:177) ... 32 更多java:248) at org.jboss.deployment.OptAnnotationMetaDataDeployer.processJBossClientMetaData(OptAnnotationMetaDataDeployer.java:115) at org.jboss.deployment.OptAnnotationMetaDataDeployer.processMetaData(OptAnnotationMetaDataDeployer.java:82) at org.jboss.deployment.AnnotationMetaDataDeployer.deploy(AnnotationMetaDataDeployer .java:177) ... 32 更多
对 Foo 做了什么会导致 JBoss 在加载时找不到它?权限和位置相同,所有者也相同(在 Linux RedHat 5.4 上运行)?
如何解决无法处理元数据问题?
再次谢谢你!
干杯,