| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/02/2009 10:45:29
|
braudes
HelloWorld
![[Avatar]](/images/avatar/5b648f859eb8adc0121e6a1bf7f6aa98.jpg)
Membro desde: 22/10/2007 12:49:43
Mensagens: 13
Localização: Goiânia - Goiás
Offline
|
Pessoal,
Tudo bem? Não estou conseguindo configurar corretamente um servico pelo HttpInvokerServiceExporter para que fique singleton. Primeiramente, deixe-me relatar o cenário: Tenho um sistema que possui um controle de acesso externo, ou seja, rodando em outra aplicação (outra contexto). Este controle de acesso expõe alguns serviços utilizando RMI (org.springframework.remoting.rmi.RmiServiceExporter) atualmente. Dentro de meu sistema tenho vários módulos que rodam em contextos diferentes (aplicações diferentes). Para que estes módulos comuniquem-se entre si, tenho um módulo Portal que expõe um serviço, via RMI também, que auxilia estas aplicações no compartilhamente de informações por uma "sessão".
<CONTROLE DE ACESSO>
|
| autentica e autoriza
|
<PORTAL>
|
| compartilha informações relacionadas ao sistema
|
<CONTABILIDADE>,<FINANCEIRO><...>
Utilizando RMI está funcionando perfeitamente. Mas, tenho um problema de sincronia entre as aplicações ao subir o tomcat. Atualmente estão todos em um mesmo Tomcat, então preciso subir, primeiramente, o controle de acesso. Posteriormente, tenho que subir o módulo Portal e só então subir os demais módulos aleatoriamente. Mesmo colocando lazy-init="true", o spring teima em tentar estabelecer a conexão durante o deploy.
Depois de tanto sofrer com servidor caindo e o sistema não subindo sozinho devido a sincronia necessária entre as aplicações (esta arquitetura já estava pronta quando cheguei ao projeto), decide pesquisar e mudar para invocação via HTTP (org.springframework.remoting.httpinvoker.HttpInvokerServiceExporter).
Após configurar os arquivos necessários e o sistema subir, verifiquei que o serviço que está sendo exposto pelo módulo Portal está sendo criada para cada aplicação que o utiliza, fazendo com que as informações que deveriam estar nele para compartilhamente não existam, impossibilitando, por exemplo, que eu navegue do Portal para um módulo qualquer. Mesmo colocando singleton em tudo quanto é declaração do bean, não consegui ainda fazer funcionar como o RMI.
Os arquivos de configuração utilizados para o org.springframework.remoting.httpinvoker.HttpInvokerServiceExporter são:
No controle de acesso:
web.xml
remotingFrecace-servlet.xml
Módulo Portal:
web.xml
servicosFrecace.xml
remoting-servlet.xml
Módulo financeiro (por exemplo):
web.xml
servicoPortal.xml
Se alguém tiver alguma solução melhor ou souber o que pode estar errado. Por favor me responda. Obrigado.
|
|
|
 |
|
|
|
|
|
|