OpenJPA Исключение, связанное с драйвером JDBC и URL-адресом соединения в TomEE + - PullRequest
0 голосов
/ 05 июня 2018

Мы столкнулись с проблемой в нашем приложении в отношении конфигурации постоянства.Приложение работает на TomEE Plus (7.0) и использует реализацию Open JPA.Ниже приведена ошибка, которую мы получаем

<openjpa-2.4.2-r422266:1777108 nonfatal general error> org.apache.openjpa.persistence.PersistenceException: There were errors initializing your configuration: <openjpa-2.4.2-r422266:1777108 fatal user error> org.apache.openjpa.util.UserException: A connection could not be obtained for driver class "oracle.jdbc.xa.client.OracleXADataSource" and URL "jdbc:oracle:thin:@//mydburl.abc.com:1881/MYSID.ABC.COM".  You may have specified an invalid URL.

Мы не получаем вышеуказанную ошибку при использовании oracle.jdbc.driver.OracleDriver.Настройки драйвера XA работали нормально в IBM WebSphere 8.5.Есть ли что-то еще, что нам нужно настроить в TomEE +, чтобы оно работало?

Обновление

Добавление также файла persistence.xml

<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence"
    version="1.0">
    <persistence-unit name="MySchema" transaction-type="JTA">
        <provider>org.apache.openjpa.persistence.PersistenceProviderImpl</provider>
        <jta-data-source>myjndi</jta-data-source>
        <class>com.abc.jpa.entity.Tuser</class>
        <class>com.abc.jpa.entity.Taddress</class>
        <properties>
            <property name="tomee.jpa.factory.lazy" value="true"></property>
            <property name="javax.persistence.jdbc.driver" value="oracle.jdbc.xa.client.OracleXADataSource" />
            <property name="javax.persistence.jdbc.url"
                value="jdbc:oracle:thin:@//mydburl.abc.com:1881/MYSID.ABC.COM" />
            <property name="javax.persistence.jdbc.user" value="userName" />
            <property name="javax.persistence.jdbc.password" value="password" />
        </properties>
    </persistence-unit>
</persistence>

Как уже упоминалось, он отлично работает, если я использую oracle.jdbc.driver.OracleDriver в качестве класса драйвера jdbc

...