Jboss:como aproveitar código não escrito para servidores de

6 respostas
M

como fazer para que EJBs acessem bibliotecas java (legadas) não escritas para servidores J2EE ?

6 Respostas

pcalcado

JNI

[]s

T

Uai, as bibliotecas Java normalmente podem ser usadas, a menos que estejam muito amarradas com interface com usuário (por exemplo, se você tem uma classe de processamento de transações que em vez de retornar um código de erro, fica mostrando um monte de dialog boxes para o usuário). Nesse caso você precisa separar a camada de apresentação (as mensagens) da de negócio (o processamento da transação em si).
O que não é muito legal em servidores de aplicação (EJBs) é usar bibliotecas JNI (usar bibliotecas em C / C++) pois deixam o ambiente extremamente frágil (ou seja, cai toda hora por algum motivo desconhecido, ou ficam com vazamentos inexplicáveis de memória… É muito difícil escrever um programa C/C++ que não tenha algum problema esquisito desses.)
Em vez disso é recomendado deixar essas bibliotecas em um executável Java separado, para serem acessadas via RMI ou outra forma (Web Services etc.) Dessa forma, você não precisa reinicializar o servidor de aplicações só porque alguma biblioteca JNI deixou o ambiente maluco; só esse executável Java que está rodando separado (e talvez até em uma outra máquina, para evitar algum problema de o programa Java consumir 100% de CPU ou 100% de memória).

pcalcado

Nossa, como fui idiota. Não tinha visto o ‘java’ :roll:

Na verdade, dependendo do caso é só um import :wink:

[]s

T

“pcalcado”:
Não tinha visto o ‘java’ :roll:
[]s

É que você viu a palavra “legado” - isso já acende aquele LEDzinho piscante na cabeça de todo programador Java que se preza. Isso normalmente causa um reflexo condicionado com três possíveis respostas:

  • Reescreva. ([size=“9”]Só Java é uma linguagem de verdade, nenhuma outra merece sobreviver.[/size])
  • Use JNI. ([size=“9”]Você conhece C++ e sabe que não é tão difícil assim…[/size])
  • Use Web Services. ([size=“9”]É a última moda, todo mundo está usando…[/size])
pcalcado

Na verdade não, eu apenas passei os olhos pela pergunta e não vi a palavra, como é bem habitual por aqui este tipo de pergunta, dei a resposta normal.

Belo estereótipo. Você deve estar orgulhoso.

T

Fica frio, é que a gente sempre tenta ajudar e acaba sendo apressado.

Criado 10 de dezembro de 2002
Ultima resposta 1 de nov. de 2004
Respostas 6
Participantes 3