我正在尝试使用JNDI在servlet中获取新的有状态会话Bean(作为局部变量)。我的doGet()
方法具有以下内容:
Bean bean = (Bean) new InitialContext().lookup("beanName");
我尝试过包含java:comp/env
,但我的所有尝试都导致了命名异常。
我正在尝试使用@Stateful
和@Stateful(name="beanName")
@Stateful(mappedName="beanName")
注释中的bean
答案 0 :(得分:2)
我需要的是在类级别的servlet上使用@EJB
注释,如下所示:
@EJB(name="beanName", beanInterface = Bean.class)
然后使用@EJB
注释绑定的名称来查找服务方法:
Bean beanInstance = (Bean) new InitialContext().lookup("java:comp/env/beanName");
除了普通的@Stateful
注释之外,Bean类本身不需要任何内容。