Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

comunicação entre servidores de aplicação

Olá,

Gostaria de ajuda em relação a comunicação entre webservices. Tenho a seguinte estrutura. Existe o banco e um servidor glassfish que retorna as Entidades do banco via select com a JPA a utilização do pool é via JTA. Existe um servidor em Node (express) que é onde está contido a camada dos DTO que são montados através das requisições para o glassfish. O problema é que a cada chamada para o glassfish uma nova transação é aberta e finalizada. Gostaria de que esta transação fosse mantida aberta enquanto o node executa a rotina e que o node precisasse enviar o commit para que a transação fosse comitada. Desta forma seria como se o @stateless estivesse no node. Seria correto utilizar o @SessionScope para manter o controller requisitado em memória e assim utilizando a mesma transação? Existe algum design e design patterns para este tipo de situação? conhece algum exemplo de implementação?

Desde já agradeço.

3 respostas

Lucas bom dia, dá uma lida sobre "open session in view" e vê se seria seu caso!

Olá Guilherme, muito obrigado pela sua resposta. Acredito que seria o mesmo conceito, porém ao invés de manter a transação aberta para a view, seria para o node. Estou usando CDI, teria alguma forma de implementar um interceptor para controlar qual transação o rest irá utilizar?

solução!

Utilizando o hibernate é totalmente possível esse tipo de arquitetura. Muito obrigado Guilherme.

https://developer.jboss.org/wiki/OpenSessionInView