Добавление TransactionSynchronizationRegistry в weblogic-ejb-jar.xml - PullRequest
1 голос
/ 15 декабря 2011

Я пытаюсь использовать 'TransactionSynchronizationRegistry' с помощью EJB-инъекции в сессионном компоненте. Однако во время развертывания на сервере приложений WebLogic я получил ошибку, что 'TransactionSynchronizationRegistry' неправильно определен в weblogic-ejb-jar.xml. Я пытался сделать это, но пока безуспешно. Я пытался сделать следующее:

<?xml version = '1.0' encoding = 'windows-1252'?>
<weblogic-ejb-jar xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                  xsi:schemaLocation="http://www.bea.com/ns/weblogic/weblogic-ejb-jar http://www.bea.com/ns/weblogic/weblogic-ejb-jar/1.0/weblogic-ejb-jar.xsd"
                  xmlns="http://www.bea.com/ns/weblogic/weblogic-ejb-jar">
  <weblogic-enterprise-bean>
    <ejb-name>asdas</ejb-name>
    <resource-description>
      <res-ref-name>TransactionSynchronizationRegistry</res-ref-name>
      <jndi-name>java:comp/env/TransactionSynchronizationRegistry</jndi-name>
    </resource-description>
  </weblogic-enterprise-bean>
</weblogic-ejb-jar>

1 Ответ

2 голосов
/ 16 декабря 2011

Мне удалось сделать эту работу.Я делал инъекцию так:

@Resource
TransactionSynchronizationRegistry trx;

, поэтому вместо модификации weblogic-ejb-jar.xml я изменил инъекцию так, чтобы она стала такой:

@Resource (mappedName = "java:comp/TransactionSynchronizationRegistry")
TransactionSynchronizationRegistry trx;

Это сработало!

...