在 JBoss 6 中部署 Seam 应用程序时出现问题

发布于 2024-10-28 19:05:45 字数 2400 浏览 1 评论 0原文

我正在尝试在 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 相同)代码>)

I'm trying to deploy a simple "hello world" Seam application on JBoss 6, and I'm getting these errors on the log:

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' **

Evidently the deployment process can't find TimerServiceDispatcher and EjbSynchronizations , but I registered them in 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>

What am I doing wrong, or what am I missing? and notice that the deployer is looking for the components in /helloworld/jboss-seam/TimerServiceDispatcher and not in /helloworld/TimerServiceDispatcher (same thing with EjbSynchronizations)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

ˇ宁静的妩媚 2024-11-04 19:05:45

找到解决办法了,是包装的问题。 jboss-seam.jar 库位于项目的 .ear 文件内的 lib 目录中;这在 JBoss 6 中不再有效,因为该文件现在必须驻留在 .ear 内的根级别。另外,application.xmljboss-seam.jar 的位置也必须相应调整。

Found the solution, it was a problem with the packaging. The jboss-seam.jar library was in the lib directory inside the .ear file of the project; this no longer works in JBoss 6, as that file must now reside at the root level inside the .ear. Also, the location of jboss-seam.jar in application.xml must be adjusted accordingly.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文