Pessoal, é uma boa prática ter uma aplicação em swing (cliente/servidor) acessando ejbs ?
A maioria dos exemplos que vejo pela net são todos para aplicações web.
Tenho intenção de fazer a interface do cliente em swing e disponibiliza-las através do java web start acessando ejbs, ao invés de fazer o de costume, jsp/servlet/ejb.
Já até tenho um prototipo pronto e funcionando perfeitamente, mas ficou essa dúvida no ar.
não esqueça só que os EJBs precisaram ter interface remota, e os clientes precisaram ter acesso a porta jndi e iiop do(s) servidor(es) onde estão rodando os EJBs
urubatan, legal vc ter tocado nesse assunto de porta de servidores…
gostaria de aproveitar e perguntar quais portas eu preciso liberar no servidor, pois aqui na rede interna funciona normalmente, mas quando tento acessar de fora o firewall bloqueia.
Vi na documentação as seguintes portas:
1050 ORB (Object Request Broker) underlying the JNDI name server <J2EE_HOME>/config/server-config.xml
Pelo que entendi só bastaria a porta 1050, mas mesmo ela liberada no servidor estou tendo problemas para acessar.
Teria mais alguma outra configuração ou porta que vc saberia me dizer ?
Para acesso remoto estou usando o seguinte:
System.setProperty(“org.omg.CORBA.ORBInitialHost”,“www.meuservidor.com.br”);
Eu sou novo na tecnologia java e não conheço muito.
Mas o que me chamou a atenção para a tecnologia foi justamente isto que você colocou. Swing + EJB. Acho isto daí muito legal e próximo da tecnologia que usava nos mainframes (guardadas as diferenças, ok?).
Gostaria se fosse possível se tu pudesses me passar o escopo do teu projeto, isto é, qual é o desenho da aplicação, quais e como tu usas os ejbs, quais os frameworks que tu utilizas etc… essas coisas conceituais e práticas.
Estas informações ajudariam sobre maneira…
Desde já agradeço…
Abraços…
O Protótipo, para fim de aprendizado, é um cadastro de cidade que envolve 5 tabelas,
são elas:
Cidade, Pais, Estado, Pessoa e Transportador.
Estou usando CMP, versão beta do j2sdkee para aproveitar os novos recursos do EJB-QL (max, count e etc) e o cloudscape.
Um Session Bean que funciona como controlador/gerenciador do EntityBeans.
No Session Bean contém também toda(quase) a regra de négocio.
Os EntityBeans persistentes, correspondente a cada tabela do banco, com suas classes pk e relacionamentos conforme manda o figurino.
Estarei disponibilizando aos poucos esse prototipo no site do java.net, assim que eu aprender a usar os recursos do site.
Se vc quiser acompanhar, http://mdejb.dev.java.net/
Vou acompanhar sim, com o maior interesse (e talvez possa colaborar).
Mas tenho uma dúvida.
A serialização dos ejbs via wan pode ficar excessivamente lenta, impactando sensivelmente o tempo de resposta do aplicativo?
Alguém saberia responder?
Abraços…
ok, assim que eu conseguir organizar e estruturar tudo lá eu aviso.
na verdade como eu falei ja tenho um prototipo pronto, mas não queria simplesmente jogar lá e pronto, quero fazer algo do zero, algo simples que possa servir de exemplo para outros depois.
pois quase ou nada relacionado a swing acessando ejbs sendo disponibilizados pelo java web start consegui encontrar, então queria fazer essa aplicação para servir de guia e mostrar que é possivel.
Olá pessoal, gostei desse tópico, pq esses dias eu estava justamente pensando nisso, possuo uma aplicação que está construída com JSP e servlets apenas. E pensei em fazer um cliente swing para o usuário poder ter mais agilidade em cadastrar as informações do que a interface web proporciona.
Sou novo nesse esquema de J2EE, EJBs, etc. E como queria fazer um cliente onde não precisasse me preocupar com firewall, proxys, portas, etc, comecei a ler sobre WebServices, que pareceram solucionar (ou ao menos minimizar) algumas dessas preocupações.
pergunta, será que seria possível, ou melhor, menos trabalhoso usar essa idéia através de webservices ao invés de EJBs???
Existe algum código exemplo de cliente swing acessando informações através de webservices?
Bom… eu ainda não conheço nenhuma IDE que facilite (de verdade) o desenvolvimento de componentes Swing. Nunca vi fazer uma JTree ou JTable mais complexas sem passar algumas boas horas inserindo códigos de forma manual. Sendo assim, acredito que nunca é uma boa idéia usar swing… independentemente do que será usado como core do sistema (no caso EJB).