Каков «правильный» способ вызова транзакционно-безопасного из одного файла EAR в другой с помощью Spring? - PullRequest
1 голос
/ 15 декабря 2010

У меня есть два приложения пружин A и B, каждое в отдельном файле EAR.Теперь я хочу позвонить из A в B и наоборот, может быть, даже A -> B -> A или более.

Звонки должны быть транзакционно безопасны .

Каков рекомендуемый подход?

Ответы [ 2 ]

0 голосов
/ 15 декабря 2010

Единственный способ сделать синхронную транзакцию - с двухсторонней фиксацией - вызовом от одного EAR к другому - это использовать удаленные EJB: (

Если это возможно в вашем случае, я бы лучшеПри асинхронном вызове с использованием JMS отправка сообщения будет связана с вашей транзакцией, но получатель не сможет откатить вашу транзакцию, как это было бы возможно при удаленном вызове EJB.

0 голосов
/ 15 декабря 2010

Единственный способ сохранить это в безопасности - это использовать транзакции JTA, управляемые контейнером. Spring поддерживает их через JtaTransactionManager, поэтому вы можете написать свою транзакционную логику так же, как и любые другие транзакции в Spring. Все источники данных должны управляться контейнером, а не приложениями.

...