Tecnologia para LAN e Internet

3 respostas
T

Boa tarde a todos,

Atualmente em Java, trabalho com EJB3 (Glassfis) para distribuir a aplicação. O problema é: não consigo fazer com que a aplicação desktop do usuário acesse as regras de negócio no servidor glassfish, fiz testes com RMI puro, mas pesquisando nos foruns e internet vi que diversas pessoas falam mal de RMI via internet. Com delphi e BSS (Borland Socket Server) (RPC) temos aplicações que funcionam tanto na LAN como via internet, e muito bem, mas o problema de delphi é que preciso de windows. Eu gostaria de saber dos colegas alguma tecnologia boa que me atenda dessa maneira localmente (LAN) e via internet.

Obrigado.

Abraços.

3 Respostas

paulofafism
Boa tarde a todos,

Atualmente em Java, trabalho com EJB3 (Glassfis) para distribuir a aplicação. O problema é: não consigo fazer com que a aplicação desktop do usuário acesse as regras de negócio no servidor glassfish, fiz testes com RMI puro, mas pesquisando nos foruns e internet vi que diversas pessoas falam mal de RMI via internet. Com delphi e BSS (Borland Socket Server) (RPC) temos aplicações que funcionam tanto na LAN como via internet, e muito bem, mas o problema de delphi é que preciso de windows. Eu gostaria de saber dos colegas alguma tecnologia boa que me atenda dessa maneira localmente (LAN) e via internet.

Obrigado.

Abraços.

Boa noite tap_pedroso

Estou desenvolvendo uma aplicação Desktop que usa o GlassFish + Hibernate + EJB + SQL Server. E estou tendo sucesso em conseguir acessar as regras de negocio que estão no servidor.

Uma dica é que vc tem que ficar atento as classes que não são serializadas pois erros iram aparecer como o EJB usa RMI para transportar seus objetos. E o desenpenho esta sendo bastante satisfatório.

Um outro detalhe que você tem que verificar e os nome JNDI que vc define nos arquivos de configuração do servidor Glassfish.

Qualquer coisa mande um PVT.

rrigoni

Simples,
Cria um EJB Remoto e faça lookup dele.
Você apenas precisará dos stubs do client para isso. Utilizei isso em uma aplicação de administração do site, onde todo o gerenciamento era feito remoto.
Não esqueça do jar do glassfish appserv-ee.jar no seu classpath senão não vái funcionar.

Ronaldo.

T

Olá paulofafism e rrigoni,

Obrigado pela atenção, o comentário de vocês me despertou duas dúvidas, e que pode estar relacionada a um problema que estou tendo atualmente. Primeiro vou esclarecer minhas dúvidas e depois o problema. Minhas dúvidas são: quais as libs do glassfish são necessárias na aplicação desktop, hoje eu utilizo somente appserv-deployment-client, appserv-ext, appserv-rt e javaee, e agora vou passar a utilizar appserv-ee conforme rrigoni aconselhou para eu tentar fazer o acesso via internet. Existe mais alguma lib q não estou utilizando e devo utilizar?

A outra dúvida é sobre os nome JNDI definidos nos arquivos de configuração do servidor Glassfish que o paulofafism citou, eu não fiz esse tipo de configuração no servidor, o que tenho hoje é um arquivo .properties na aplicação desktop para configurar o acesso ao servidor Glassfish, conforme abaixo:

java.naming.factory.initial = com.sun.enterprise.naming.SerialInitContextFactory
java.naming.factory.url.pkgs = com.sun.enterprise.naming
java.naming.factory.state = com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl
org.omg.CORBA.ORBInitialHost = 192.168.0.2
org.omg.CORBA.ORBInitialPort = 3700

Esses parâmetro são passados para um Context antes de fazer o lookup dos facades.

O problema agora. Pelo menos 1 vez ao mês as aplicações desktops perdem a conexão com o glassfish, até agora não consegui descobrir o motivo, mas nem rodando a aplicação no mesmo servidor q o glassfish(acessando localhost) a conexão acontece, eu tenho que dar um stop e depois um start para voltar a funcionar. Hoje eu utilizo glassfish 2.1 + JDBC + Firebird (Lib jaybird), não utlizei JPA na época porque eu estava tendo alguns problemas com JPA e Firebird e com falta de tempo decidimos utilizar JDBC puro. Derepente meu problema hoje pode estar associado a algum desses comentarios né, conto com ajuda de vocês.

Muito obrigado pela atenção até agora.

Abraços.

Criado 12 de julho de 2009
Ultima resposta 13 de jul. de 2009
Respostas 3
Participantes 3