0

使用 GlassFish 3.1.2.1,我配置了一个 JMS 连接工厂和一个队列,可以使用 @Resource 注释将其注入 JavaServer Faces 托管 bean。

但是,当我尝试在同一项目的 JAX-RS REST Web 服务中使用这些 JMS 资源时,似乎缺少 connectionFactory 注入,并且在执行该行时出现 NullPointerException:

connection = exampleQueueFactory.createConnection();

注入代码是

@Resource(mappedName = "ExampleQueue")
private Queue exampleQueue;
@Resource(mappedName = "ExampleQueueFactory")
private ConnectionFactory exampleQueueFactory;

并且当我在 JSF 托管 bean 中成功使用相同的注入时,我猜 GlassFish 服务器在查找注入点时会跳过 JAX-RS 类。是否缺少其他配置?

4

1 回答 1

0

基于注入 JMS @Resource 时 Glassfish 中 NullPointer的答案,我添加了一个@javax.ejb.Stateless注释并且它可以工作。

后续问题:这是在 JAX-RS 资源类中启用 JMS 资源注入的推荐方法吗?

于 2013-04-30T07:57:24.480 回答