Pessoal,
Estou iniciando estudo em EJB, e gostaria de criar uma aplicação Desktop + EJB, já dei uma olhada em vários lugares e não localizei muito material sobre a integração EJB/Desktop.
Minhas dúvidas iniciais são:
1- Para rodar a aplicação cliente (Desktop), ela precisa está incorporada em um container ou não?
2- Como faço para chamar um EJB q está em outra máquina?
P.S.: Se alguém tiver e/ou poder me indicar algum exemplo, será bem vindo.
T+
JC
Caro Guilherme,
Obrigado pela dica.
No momento do lookup eu passo o ip do servidor? Você poderia me conseguir algum exemplo?
T+
JC
Pessoal,
Tentei implementar um exemplo simples para testar o lookup de uma aplicação stanalone com um EJB em um container remoto.
Segue abaixo a implementação do aplicativo cliente e do EJB (servidor Glassfish):
App Cliente:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package clientappstandalone;
import java.util.Properties;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.naming.InitialContext;
import javax.naming.NamingException;
/**
*
* @author kurumin
*/
public class Main {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
try {
Properties props = new Properties();
props.setProperty("java.naming.factory.initial", "com.sun.enterprise.naming.SerialInitContextFactory");
props.setProperty("java.naming.factory.url.pkgs", "com.sun.enterprise.naming");
props.setProperty("java.naming.factory.state", "com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl");
props.setProperty("org.omg.CORBA.ORBInitialHost", "localhost");
props.setProperty("org.omg.CORBA.ORBInitialPort", "12332");
InitialContext ic;
System.out.println("testeante");
ic = new InitialContext(props);
Object o = ic.lookup("Bean30#ejb.Bean30Remote");
System.out.println("testepos");
} catch (NamingException ex) {
Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
EJB’s:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package ejb;
import javax.ejb.Stateless;
/**
*
* @author kurumin
*/
@Stateless (mappedName="Bean30")
public class Bean30Bean implements Bean30Remote, Bean30Remote2 {
public String getResult() {
return "This is EJB 3.0 Bean";
}
public String getResult2() {
return "This is EJB 3.0 Bean 2";
}
}
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package ejb;
import javax.ejb.Remote;
/**
*
* @author kurumin
*/
@Remote
public interface Bean30Remote {
String getResult();
}
Este exemplo está apresentando o seguinte erro:
Pessoal,
Já tentei de todo jeito e não consegui, será q alguém poderia me dá uma mãozinha?
Aceito sugestões?
:?: :?: :?: :newbie: :martelada:
Ou então algum exemplo parecido q esteja funcionando.
T+
JC
[quote=jcahg]Pessoal,
Já tentei de todo jeito e não consegui, será q alguém poderia me dá uma mãozinha?
Aceito sugestões?
:?: :?: :?: :newbie: :martelada:
Ou então algum exemplo parecido q esteja funcionando.
T+
JC[/quote]
jcahg,
Por favor, evite ficar “upando” o tópico. Aguarde alguém responder sua dúvida. Caso isso não acontece, é porque realmente ninguém sabe como te ajudar 
http://www.google.com.br/search?hl=pt-BR&sa=X&oi=spell&resnum=0&ct=result&cd=1&q=EJB+%2B+glassfish+lookup&spell=1