Olá pessoal, estou com uma dúvida,
Quando fazemos o deploy de mais de um ear em um servidor de aplicação (estou usando o JBOSS), os dois compartilham os seus jars internos?
Pergunto isso pois trabalho em um hospital. A idéia inicial é que se tenha uma base de dados enorme, cada qual com seu esquema separando os dados, e que haja vários sistemas. Cada sistema seria responsável por uma área de negócio. Imaginem um sistema da área da farmácia, prontuário eletrônico, agendamento e etc. Apesar de pensarmos que cada sistema deva ser um ear, ou seja, um componente “independente”, cada um tem suas dependências com outros sistemas. Por exemplo, no prontuário temos uma classe mapeada “Paciente” e está em um jar junto com outras entidades no prontuario.ear. Porém, no sistema de óbito, precisamos relacionar a classe mapeada “EntradaÓbito” com o seu devido paciente. Nesse caso, o paciente está num jar em um outro ear. Se eu colocar os dois ears (prontuario.ear e obito.ear) no servidor, o obito é capaz de encontrar paciente, sem que eu tenho que adicionar o jar das entidades do prontuário no ear de obito?
Estou meio confusa com esse tipo de integração. Realmente não sei se esse é a melhor maneira.
Preciso integrar esses vários sistemas não apenas com serviços (onde eu poderia disponibilizar através de um Web Service), preciso integrá-los através de uma base de dados.
Alguém já passou por isso?
Detalhe: fiz um teste aqui. Tenho 3 ears, só que os que dependem das entidades de outros possuem jar duplicados. Até então estava funcionando. Mas agora adicionei um outro ear que depende das entidades de outros dois e está dando erro. Não consigo fazer lookup. Já tentei isolar o class loading, mas aí dá erro de mapeamento, dizendo que a classe não foi mapeada (sendo que funcionava antes). Para entenderem melhor, segue a estrutura:
app1.ear
–app1_entities.jar
–app1_services.jar (stateless com interface remota)
–app1_services_impl.jar (interfaces dos stateless)
app2.ear
–app2_entities.jar
–app2_service.jar
–app2_service_impl.jar
–app1_entities.jar
–app1_services.jar
app3.ear
–app3_entities.jar
–app3_service.jar
–app3_service_impl.jar
–app1_entities.jar
–app1_services.jar
–app2_entities.jar
–app2_services.jar
Nesse caso, em qual ear é feito o deploy das entities primeiro? Existe algum problema em replicar as entidades?
Obrigada.