sexta-feira, 23 de abril de 2010

Glassfish v3 EJB e Standalone Client

2

Não sei se muita gente usa isso, mas eu uso, um client swing, para um modulo EJB, recentemente, saiu a versão V3 do glassfish, e lá fui eu tentar comunicar com o container EJB, até a versão v2 as bibliotecas necessarias eram o JavaEE 5, appserv-rt, appserv-deployment, appserv-admin e o appserver-ext, isso devia tar entorno de uns 20MB de bibliotecas.

Seguindo ao FAQ do Glassfish eu devia adicionar somente o GF-CLIENT no classpath da applicação, um jarzinho de alguns KB, e adivinha, não funcinou, depois de uma extensiva busca não encontrei solução e cheguei a conclusão que, NÃO ACREDITE NO FAQ DO CLASSFISH. Além desse tal de gf-client, eles aconselham vc a usar o construtor sem argumentos da classe InitialContext, se vc quiser conectar SOMENTE EM LOCALHOST use o construtor sem argumetos.

Criei um projeto, adicionei todos os jars do GLASSFISHV3_HOME/glassfish/modules, a conexão funcionou 100%, agora era ver quais jars iriam manter minha conexão ativa, e fui removendo 1 a 1 os jars e testando, chegando finalmente a 6MB de jars (diminui bastante comparado com as versões anteriores), que devem estar no seu classpath, listados abaixo


  • auto-depends

  • common-util

  • config-api

  • config

  • config-types

  • dol

  • deployment-common

  • ejb.security

  • ejb-container

  • glassfish-naming

  • glassfish-api

  • glassfish-corba-orb

  • glassfish-corba-omgapi

  • glassfish-corba-orbgeneric

  • glassfish-corba-codegen

  • glassfish-corba-newtimer

  • glassfish-corba-csiv2-idl

  • glassfish-corba-asm

  • gmbal

  • hk2-core

  • internal-api

  • javax.resource

  • java.ejb

  • kernel

  • management-api

  • orb-connector

  • orb-iiop

  • security

  • tiger-types-osgi



E nenhum dos gf-QUALQUER_COISA é necessario, essa aplicação está em produção desse modo. Alguns desses jars são encontrados em repositorios maven como tiger-types-osgi, eu optei por adicionar a maioria no repositorio local e esses mesmo para não ter problema.

2 comentários:

Paulo A disse...

Costumo usar o comando get-client-stubs, que gera o cliente "redondo" e pronto para uso em maquinas(client) sem glassfish instalado. Este comando é usado pelo netbeans durante a execução da aplicação.

Felipe disse...

Oi!

Me mandaram esse vídeo aqui sobre um tal Clube dos Honorários Amantes da Burocracia.

http://www.youtube.com/watch?v=5QXwyM84HFM

É uma piada com os processos burocráticos, quase sempre presentes em empresas de todo tipo – infelizmente! Vale a pena acompanhar a letra.

Abraços!

 
Design by ThemeShift | Bloggerized by Lasantha - Free Blogger Templates | Best Web Hosting