Распределенная транзакция между двумя серверами EJB

Я читал статью о двух компьютерах и распределенной транзакции на сервере EJB. Он говорит:

2-ПК позволяет управлять транзакциями на разных серверах и ресурсах (например, базах данных и поставщиках JMS). Подробности о 2-ПК выходят за рамки этой книги, но система, которая его поддерживает, не потребует каких-либо дополнительных операций со стороны EJB или разработчика приложений.

Помимо управления транзакциями в собственной среде, сервер EJB может координировать свои действия с другими транзакционными системами. Если, например, EJB действительно поступает с другого сервера приложений, чем BankEJB, два сервера приложений будут взаимодействовать для управления транзакцией как одной единицей работы.

Если у меня два разных приложения Enterprize (A и B), запущенные на двух серверах приложений, которые размещены на двух разных машинах. Я буду использовать серверы приложений WebLogic и Oracle AS. Возможно ли, что 2 ПК / распределенная транзакция будут координировать транзакцию между двумя серверами (даже если они от разных поставщиков)? Дайте мне знать, если мой вопрос не ясен.


person Vicky    schedule 04.06.2011    source источник


Ответы (1)


Теоретически спецификация EJB требует, чтобы контейнеры EJB либо реализовывали взаимодействие транзакций с использованием OTS, либо генерировали исключение.

На практике кажется, что WebLogic действительно реализует взаимодействие транзакций:

http://download.oracle.com/docs/cd/E12840_01/wls/docs103/jta/trxsvc.html#wp1056344

... но OC4J не:

http://download.oracle.com/docs/cd/B12314_01/web.904/b10326/interop.htm

person Brett Kail    schedule 04.06.2011