2014-02-07 31 views
1

是否有任何有效的原因,所有球衣资源类都使用@ManagedBean注释标记。资源类已经用@Path和@Produces jaxrs注释标记了。容器是否认为它是一个jax-rs资源类是不够的?针对球衣资源类别的托管Bean

+0

我也问自己这个问题,并发现泽西文档中所提供的答案。 –

回答

0

javax.annotation.ManagedBean不是JAX-RS注解,正因为如此,读取注释当容器不应假设有关JAX-RS什么,所以,是的,@Path@Produces足够的容器将其视为一个jax-rs资源。如果您希望通过容器向资源提供其他服务(非jax-rs相关),则可以使用@ManagedBean,请检查link

0

@ManagedBean如果您希望在您的EJB中不使用@Local注释和接口的情况下将EJB注入JAX-RS资源,则需要注释。

比较下面新泽西文档主题:

  1. https://jersey.java.net/documentation/latest/deployment.html#deployment.javaee.managed
  2. https://jersey.java.net/documentation/latest/deployment.html#deployment.javaee.ejb

所以,你可以选择什么样的方法适合您的需求以及:要么使用@Local接口+ @Stateless EJB或注入您的@Stateless EJB中没有@Local接口在您的@ManagedBean带注释的资源中。

也来看看官方的例子:https://github.com/jersey/jersey/tree/master/examples/managed-beans-webapp