从 servlet 注入 JBoss 5 AS 和 EJB3 bean?
据我了解,JBossAS 5.x 支持使用 @EJB3 注释在 servlet 中注入 EJB3 bean。 我正在使用 JBossAS 5.0.1.GA 的默认配置,但它不起作用。 我已将mappedName 参数添加到带有会话bean JNDI 名称的@EJB 注释中,但它不执行任何操作。 没有明显的错误,只是从未注入 bean。
会话 bean 位于 ejb-jar 中,servlet 位于战争中,一切都打包在耳朵中。 手动 JNDI 查找工作得很好。 有任何想法吗?
It was my understanding that JBossAS 5.x supported EJB3 bean injection in servlets with the @EJB3 annotation. I'm using the default configuration for JBossAS 5.0.1.GA and it's not working. I've added the mappedName argument to the @EJB annotation with the session beans JNDI name, and it just doesn't do anything. No apparent errors, the bean is just never injected.
The session beans are in the ejb-jar, the servlets in a war, everything is packaged in an ear. Manual JNDI lookups work just fine. Any ideas?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果您的 web.xml 指向旧版本的规范,则可能会发生这种情况。 理想情况下,它应该类似于
此 链接 也可能有一点帮助。
This may happen if your web.xml points to an older version of the spec. Ideally, it should be something like
This link may help a little too.
您还应该检查 classpath.JAr 文件中 EJB3 部署所需的 jar 文件是否为 jboss-ejb3-ext-api.jar。
You should also check the jar file needed for EJB3 deployment in the classpath.JAr file is jboss-ejb3-ext-api.jar.