JBOSS - Problema com lookup

Oi pessoal,

Tenho o seguinte Stateful inserido no modulo ejb da aplicação:

package com.calculator;

import java.io.Serializable;
import java.util.ArrayList;

import javax.annotation.PostConstruct;
import javax.ejb.Stateful;

@Stateful
public class StatefulCalculator implements Calculator, Serializable {

@PostConstruct
public void inicio() {
System.out.println(“METODO INICIO CHAMADO !!!”);
}

// outros métodos

}

Bom, tenho uma págia JSP que tenta acessar o bean em questão da seguinte forma:

Properties env = new Properties( );
env.put(Context.INITIAL_CONTEXT_FACTORY,“org.jnp.interfaces.NamingContextFactory”);
env.put(Context.PROVIDER_URL,“jnp://localhost:1099”);
env.put(Context.URL_PKG_PREFIXES,“org.jboss.naming:org.jnp.interface”);

InitialContext ctx = new InitialContext(env);
cal = (Calculator) ctx.lookup(“StatefulCalculator”);

A questão é que o JBoss retorna a seguinte mensagem:

javax.naming.NameNotFoundException: StatefulCalculator not bound

Será que falta configurar algo ?

Muito obrigado

Marcos

vc tem que dar lookup no endereço StatefulCalculator/local ou StatefulCalculator/remote, se a sua interface for local ou remota

outra, se esses ejb’s estiverem dentro de um ear, por padrão o nome fica NomeDoEarSemExtensao/NomedaClassequeimplementaAinterface/tipodainterface

Tenta ir no console do JBoss, ai vai em JNDI tree e checa qual eh o nome que esta registrado. Vai quase no fim da pagina, que eh aonde fica essa informacao.

O nome padrao do seu bean deve ser StatefulCalculatorBean/remote, mas checa no console para ter certeza.

Oi galera,

Qmx, realmente o que faltava era o endereço correto contendo o nome do ear e contendo local no final.

Tudo está funcionando agora

Muito obrigado.
[]'s


Felipe, o bean estava mesmo registrado como StatefulCalculator. Eu é que estava tentando localizar de forma errada.

Muito obrigado.
[]'s