1

我正在尝试使用类型 2 连接连接到 CICS 上 jvm 服务器上的 OSGi 包中的 DB2,但出现以下错误。

com.ibm.db2.jcc.am.SqlException:加载本机库 db2jcct2zos_64 失败,java.lang.UnsatisfiedLinkError:db2jcct2zos_64(未在 java.library.path 中找到):ERRORCODE=-4472,SQLSTATE=null

我已经在 OSGi 的 JVM 配置文件中的 LIBPATH_SUFFIX 中引用了包含 libdb2jcct2zos.so、ibdb2jcct2zos_64.so、libdb2jcct2zos4.so、libdb2jcct2zos4_64.so 文件的目录。

如果我尝试使用 System.load("/usr/db2/v10/jdbc/lib/libdb2jcct2zos_64.so") 在 java 程序中加载这些 DLL,我会收到错误

“未找到 EDC5205S DLL 模块”。

4

2 回答 2

0

正如对您昨天提出的问题的回答中提到的,您需要进行许多更改才能从 OSGi JVM 服务器使用 DB2:

  • 在 CICS 作业中,将 DB2 数据集添加到STEPLIB
  • 在 JVM 配置文件中,引用LIBPATH_SUFFIX属性中的 DB2 库
  • 在 JVM 配置文件中,通过OSGI_BUNDLES属性安装 DB2 包
于 2017-01-13T09:47:11.707 回答
0

面临与@kushwah_a 描述的相同问题。在 CICS 启动过程的 STEPLIB 中添加了 JDBC DSN(db2hlq.SDSNLOD2)。最后,OSGI JVM 服务器从 lib(通常是 /usr/lpp/db2version/jdbc/lib)中选择了正确的 dll(db2jcct2zos_64.so)并建立了 JDBC 连接。

于 2017-02-27T12:26:55.777 回答