CICS Java JDBC 中的 Db2 Native Library 加载错误?
Db2 Native Library load error in Java JDBC in CICS?
我正在尝试使用类型 2 连接在 CICS 上的 jvm 服务器上的 OSGi 包中连接到 DB2,但出现以下错误。
com.ibm.db2.jcc.am.SqlException: Failure in loading native library
db2jcct2zos_64, java.lang.UnsatisfiedLinkError: db2jcct2zos_64 (Not
found in 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 module not found".
如 的答案中所述,要从 OSGi JVM 服务器使用 DB2,您需要进行一些更改:
- 在 CICS 作业中,将 DB2 数据集添加到
STEPLIB
- 在 JVM 配置文件中,引用
LIBPATH_SUFFIX
属性中的 DB2 库
- 在 JVM 配置文件中,通过
OSGI_BUNDLES
属性安装 DB2 包
面临与@kushwah_a 描述的相同问题。在 CICS 启动程序的 STEPLIB 中添加了 JDBC DSN(db2hlq.SDSNLOD2)。最后,OSGI JVM 服务器从库中选择了正确的 dll(db2jcct2zos_64.so)(通常是 /usr/lpp/db2version/jdbc/lib)并建立了 JDBC 连接。
我正在尝试使用类型 2 连接在 CICS 上的 jvm 服务器上的 OSGi 包中连接到 DB2,但出现以下错误。
com.ibm.db2.jcc.am.SqlException: Failure in loading native library db2jcct2zos_64, java.lang.UnsatisfiedLinkError: db2jcct2zos_64 (Not found in 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 module not found".
如
- 在 CICS 作业中,将 DB2 数据集添加到
STEPLIB
- 在 JVM 配置文件中,引用
LIBPATH_SUFFIX
属性中的 DB2 库 - 在 JVM 配置文件中,通过
OSGI_BUNDLES
属性安装 DB2 包
面临与@kushwah_a 描述的相同问题。在 CICS 启动程序的 STEPLIB 中添加了 JDBC DSN(db2hlq.SDSNLOD2)。最后,OSGI JVM 服务器从库中选择了正确的 dll(db2jcct2zos_64.so)(通常是 /usr/lpp/db2version/jdbc/lib)并建立了 JDBC 连接。