Nome padrão de um EJB no JNDI

Pessoal,

Quando eu crio um EJB no Glassfish, qual é o nome padrão dele no JNDI?

Após criar um EJB, não consigo fazer o lookup dele através do InitialContext, de jeito nenhum.

E se este EJB tiver dentro de um EAR, muda alguma coisa?

Obrigado

Você já procurou o seu EJB no interface web de configuração do glassfish (normalmente: http://localhost:4848)?

Faça esse teste, tente passar no lookup, o nome qualificado do seu ejb (nome_do_pacote.nome_da_classe).

Ex:
ic.lookup(“br.com.ClasseDoEJB”);

https://glassfish.dev.java.net/javaee5/ejb/EJB_FAQ.html

Por padrão se você tem uma interface remota e uma classe de implementação (o mais usual) você faz lookup pelo nome completo da classe (pacote + nome).

Procura pelo item “If no global JNDI name has been specified, a default global JNDI name will be generated according to the following table” e você verá uma tabela bem explicativa com tua dúvida.

Abraços