我正在尝试在JBoss 6上部署一个简单的"hello world“Seam应用程序,我在日志中看到了以下错误:
Deployment "jboss.ejb3:application=helloworld,component=TimerServiceDispatcher,module=jboss-seam,service=EjbEncFactory" is in error due to the following reason(s): Described
Deployment "org.jboss.ejb.bean.instantiator/helloworld/jboss-seam/TimerServiceDispatcher" is in error due to the following reason(s): ** NOT FOUND Depends on 'org.jboss.ejb.bean.instantiator/helloworld/jboss-seam/TimerServiceDispatcher' **
Deployment "jboss.naming:application=helloworld,component=TimerServiceDispatcher,module=jboss-seam" is in error due to the following reason(s): ** NOT FOUND Depends on 'jboss.naming:application=helloworld,component=TimerServiceDispatcher,module=jboss-seam' **
Deployment "org.jboss.ejb.bean.instantiator/helloworld/jboss-seam/EjbSynchronizations" is in error due to the following reason(s): ** NOT FOUND Depends on 'org.jboss.ejb.bean.instantiator/helloworld/jboss-seam/EjbSynchronizations' **
Deployment "jboss.ejb3:application=helloworld,component=EjbSynchronizations,module=jboss-seam,service=EjbEncFactory" is in error due to the following reason(s): Described
Deployment "jboss.naming:application=helloworld,component=EjbSynchronizations,module=jboss-seam" is in error due to the following reason(s): ** NOT FOUND Depends on 'jboss.naming:application=helloworld,component=EjbSynchronizations,module=jboss-seam' **显然,部署过程找不到TimerServiceDispatcher和EjbSynchronizations,但我在web.xml中注册了它们:
<ejb-local-ref>
<ejb-ref-name>helloworld/EjbSynchronizations/local</ejb-ref-name>
<ejb-ref-type>Session</ejb-ref-type>
<local>org.jboss.seam.transaction.LocalEjbSynchronizations</local>
<ejb-link>EjbSynchronizations</ejb-link>
</ejb-local-ref>
<ejb-local-ref>
<ejb-ref-name>helloworld/TimerServiceDispatcher/local</ejb-ref-name>
<ejb-ref-type>Session</ejb-ref-type>
<local>org.jboss.seam.async.LocalTimerServiceDispatcher</local>
<ejb-link>TimerServiceDispatcher</ejb-link>
</ejb-local-ref>我做错了什么,或者我错过了什么?注意,部署人员在/helloworld/jboss-seam/TimerServiceDispatcher中寻找组件,而不是在/helloworld/TimerServiceDispatcher中(EjbSynchronizations也是如此)
发布于 2011-04-04 02:25:33
找到了解决方案,那就是包装的问题。jboss-seam.jar库位于项目的.ear文件内的lib目录中;这在JBoss 6中不再起作用,因为该文件现在必须驻留在.ear内的根目录下。此外,还必须相应地调整jboss-seam.jar在application.xml中的位置。
https://stackoverflow.com/questions/5482037
复制相似问题