Como acessar um componente EJB remoto de um cliente Java stand-alone

5 respostas
J

Bom dia a todos,

estou tendo dificuldades em comunicar um aplicação Java SE como o servidor de aplicação(glassfish 3.1.2).
Quando executo o programa localmente não há problema algum, ele consegue invocar o método remoto e retorna a mensagem, porém quando executo a aplicação cliente de outra máquina não funciona, não ocorre erro algum, apenas a aplicação fica “congelada” como se estivesse aguardando o server responder.
Já liberei a porta IIOP 3700 no firewall, e fiz um teste via telnet pela máquina cliente, e a mesma respondeu.
O código da aplicação cliente que estou usando é este:

Properties props = new Properties();
props.put("org.omg.CORBA.ORBInitialHost", ip_servidor);
props.put("org.omg.CORBA.ORBInitialPort", porta_iiop_servidor);
InitialContext ic = new InitialContext(props);
InterfaceComum comum = (InterfaceComum) ic.lookup("br.com.remote.InterfaceComum");

Também já estou usando argumentos da JVM: -Dorg.omg.CORBA.ORBInitialHost=IP_SERVIDOR

Alguém tem alguma ideia do que está faltando configurar?

5 Respostas

gmmascarin

Já tentou fazer look up com NOME-EAR/NOME-BEAN/remote?

J

Olá gmmascarin,
obrigado por responder, também já testei desta forma:

InterfaceComum comum = (InterfaceComum) ic.lookup("java:global/Remote/InterfaceComumImpl!br.com.remote.InterfaceComum");

Obtive o mesmo problema…

drsmachado

O EJB em questão é Stateless ou stateful?

J

É stateless.

drsmachado

Não uso Glassfish e, pelo que vi, as configurações estão ok.
Talvez seja permissão de acesso mesmo.
Seguem 2 links que possuem informações sobre


Criado 11 de março de 2013
Ultima resposta 11 de mar. de 2013
Respostas 5
Participantes 3