openjpa - 与 TomEE+ 中的 JDBC 驱动程序和连接 URL 相关的 OpenJPA 异常
问题描述
我们在应用程序中面临持久性配置方面的问题。该应用程序在 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 驱动程序类,它工作正常
解决方案
推荐阅读
- apiconnect - IBM APIConnect 是否有 IP 白名单或黑名单?
- java - 失败:org.apache.maven plugins:maven-jar-plugin:2.6:test-jar
- mysql - 获取最新 MySQL 版本的 yum 存储库
- math - 以几何级数移动对象
- python - python-docx:在保持顺序的同时遍历段落、表格和图像
- angular - MatBottomSheet closeOnNavigation 仅适用于浏览器上的后退/前进,但不适用于路由本身
- html - 仅将混合模式应用于投影
- ssh - WHM 终端帮助 - SWAP 文件删除
- node.js - 在 Node HTTP2 流中发送和接收 JSON
- json - 命令行加载json到大查询错误