【发布时间】:2017-06-05 14:24:41
【问题描述】:
-ORIGINAL_POST-
我目前正在开发一个在 JBoss 7 上运行的 JAVA (1.7) 服务器应用程序。使用 Spring 和 Hibernate 这并不奇怪,但我必须将旧的 AS/400 DB 连接到系统。到目前为止,我已经调整了应用服务器的驱动程序,并且已经建立了数据库连接。应用程序服务器已记录已找到数据库。
现在我尝试使用 JPA 和 Hibernate 访问数据。但是我的库似乎有问题。他就是服务器正在记录的内容。
英语:
对于这个文件,在 SQL/ODBC 文件中没有找到任何库。这 在 *CURLIB、*LIBL 或默认库中找不到文件 数据库来源。没有 OVRDBF 或未设置 OVRDBF。 [...] PCSACC/400
德语原文:
Für diese Datei wurde keine Bibliothek in den SQL/ODBC-Datan 厄米特尔特。 Die Datei wurde nicht in der *CURLIB, *LIBL oder in der Default-Bibliothek der Datenquelle gefunden。 Es besteht kein OVRDBF oder in einem OVRDBF wurde keine Bibliothek angegeben。 [..] PCSACC/400
我的假设是否正确,我必须在我的 EAR 中添加一个额外的库才能运行查询?另一种情况是,必须以不同的方式访问 AS/400 - 也许应用程序已连接到数据库,但没有连接到我需要访问的实例。
还有一个问题——我可以模拟这种类型的数据库吗?
-EDIT_ONE-
JBoss 'urn:jboss:domain:datasources:1.0' 子系统的数据源配置:
<xa-datasource jta="true" jndi-name="java:/asdb" pool-name="asdb" enabled="true" use-java-context="true" use-ccm="true">
<xa-datasource-property name="ServerName">192.168.1.666</xa-datasource-property>
<xa-datasource-property name="databaseName">A1B2C3D4</xa-datasource-property>
<xa-datasource-property name="Libraries">DMS7_0</xa-datasource-property>
<xa-datasource-property name="User">myuser</xa-datasource-property>
<xa-datasource-property name="Password">myuser</xa-datasource-property>
<xa-datasource-property name="naming">system</xa-datasource-property>
<xa-datasource-property name="translateBinary">true</xa-datasource-property>
<xa-datasource-property name="errors">full</xa-datasource-property>
<driver>com.ibm.as400</driver>
</xa-datasource>
以及可能的驱动因素:
<drivers>
<driver name="net.sourceforge.jtds" module="net.sourceforge.jtds">
<driver-class>net.sourceforge.jtds.jdbc.Driver</driver-class>
<xa-datasource-class>net.sourceforge.jtds.jdbcx.JtdsDataSource</xa-datasource-class>
</driver>
<driver name="com.ibm.db2" module="com.ibm.db2">
<driver-class>com.ibm.db2.jcc.DB2Driver</driver-class>
<xa-datasource-class>com.ibm.db2.jcc.DB2XADataSource</xa-datasource-class>
</driver>
<driver name="com.ibm.as400" module="com.ibm.as400">
<driver-class>com.ibm.as400.access.AS400JDBCDriver</driver-class>
<xa-datasource-class>com.ibm.as400.access.AS400JDBCXADataSource</xa-datasource-class>
</driver>
</drivers>
Hibernate 版本:
- 休眠核心 3.6.9
- 休眠 JPA API 2.0
数据源的 JBoss-Web-Configuration
<resource-ref>
<res-ref-name>jdbc/ASdb</res-ref-name>
<jndi-name>java:/asdb</jndi-name>
</resource-ref>
【问题讨论】:
-
您能否发布显示您的 AS/400 (IBM i) 连接以及其中一两个文件的 Hibernate 配置文件片段?具体来说,我正在寻找 JDBC URL——可以随意屏蔽您的 IP 地址/用户/密码以确保隐私——以及一个或两个 DB2/400 表的
规范。 -
我目前正在收集所有必要的信息。
-
所有表都在 DMS7_0 库中吗?在您的
中,在 标记中,您是否有一个 table="xxxxxx"?表名是表名还是用斜杠或点指定库/模式(如 DMS7_0.MYTABLE 或 DMS7_0/MYTABLE 还是只是 MYTABLE)?
标签: hibernate jakarta-ee jboss ibm-midrange