Ошибка при получении соединений в jboss с несколькими базами данных, даже если нет транзакции

Мы находимся в процессе обновления с JBoss 6 до JBoss 7. Характер нашего приложения имеет отдельный экземпляр базы данных для каждого клиента, а также базу данных конфигурации ядра, общую для всех клиентов. У нас часто есть код EJB, который, по крайней мере, ссылается на основную базу данных плюс данные отдельного клиента за один вызов, и даже некоторые общие фоновые процессы, которые проходят через всех клиентов.

В JBoss 6 это было обработано без проблем путем установки метода с атрибутом транзакции NOT_SUPPORTED. Однако JBoss 7 жалуется на это со следующей ошибкой:

ARJUNA012140: Adding multiple last resources is disallowed. Trying to add LastResourceRecord(XAOnePhaseResource(LocalXAResourceImpl@74bec54d[connectionListener=d3ce980 connectionManager=25b47a05 warned=false currentXid=< formatId=131077, gtrid_length=29, bqual_length=36, tx_uid=0:ffff0a2c28d1:-5a4c1f9a:504689c9:11, node_name=1, branch_uid=0:ffff0a2c28d1:-5a4c1f9a:504689c9:14, subordinatenodename=null, eis_name=unknown eis name >])), but already have LastResourceRecord(XAOnePhaseResource(LocalXAResourceImpl@518d0191[connectionListener=1a05d94a connectionManager=135f1cfe warned=false currentXid=< formatId=131077, gtrid_length=29, bqual_length=36, tx_uid=0:ffff0a2c28d1:-5a4c1f9a:504689c9:11, node_name=1, branch_uid=0:ffff0a2c28d1:-5a4c1f9a:504689c9:13, subordinatenodename=null, eis_name=unknown eis name >]))

Как мы можем обойти эту проблему, не заключая каждый вызов в разные базы данных в отдельный вызов и транзакцию EJB. Есть ли способ на самом деле отключить управление транзакциями JBoss в вызове EJB или что-то подобное?

Note: This question was modified after the bounty started based on additional discovery to sharpen the focus on the specific problem and remove other possibilities that were excluded.

Ответы на вопрос(2)

Ваш ответ на вопрос