Como posso procurar um EJB no JBoss 4.2?
Pergunta
Eu tenho uma aplicação J2EE simples:
foo.ear
- foo.war
- foo.jar (ejb3 jar)
Estou implantando em JBoss 4.2.2, que é J2EE 1.4 compatível, com um implementador ejb3 jar. Assim, no presente não é possível utilizar a anotação @EJB em servlets. Em um aplicativo normal 1,4 J2EE eu poderia usar um elemento <ejb-local-ref>
no meu web.xml, no entanto, porque os meus do EJB são v3 eles não têm interface de <local-home>
. Alguém pode sugerir uma maneira compatível com Java EE para procurar meu ejb do um servlet, sem recorrer a uma plataforma específica JNDI lookup ?
Solução
A resposta é não . Você deve usar o nome JNDI global:
anotações @EJB são utilizáveis ??em servlets e JSPs, mas, infelizmente, não temos atualizado ainda tomcat para apoiá-lo. Além disso, Tomcat trabalha com o formato XML de idade, então você não pode usar XML também. Então, por agora, você deve procurar o EJB via seu nome JNDI global.
Veja do JBoss doc para mais detalhes.