JBOSS - Problema com lookup

3 respostas
M

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

3 Respostas

qmx

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

felipe_gdr

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.

M

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

Criado 28 de fevereiro de 2008
Ultima resposta 28 de fev. de 2008
Respostas 3
Participantes 3