Pergunta

Estou tentando usar o JNDI para obter um novo feijão de sessão com estado em um servlet (como uma variável local). Meu doGet() o método tem o seguinte:

Bean bean = (Bean) new InitialContext().lookup("beanName");

Eu tentei incluir java:comp/env Mas todas as minhas tentativas levaram a nomear exceções.

Estou tentando ligar o feijão no @Stateful anotação, usando várias suposições como @Stateful(name="beanName") e @Stateful(mappedName="beanName")

Foi útil?

Solução

O que eu precisava era usar o @EJB Anotação no servlet no nível da aula, como segue:

@EJB(name="beanName", beanInterface = Bean.class)

Em seguida, a pesquisa no método de serviço pode acontecer usando o nome ligado pelo @EJB anotação:

Bean beanInstance = (Bean) new InitialContext().lookup("java:comp/env/beanName");

Não há necessidade de nada na própria classe de feijão, além da planície @Stateful anotação.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top