【发布时间】:2020-03-09 14:43:23
【问题描述】:
我在 Windows 的 IBM 集成总线 (IIB v10) 中创建了一个名为 TESTDDBB 的 JDBCProvider 服务,这也是数据库的名称。我有一个 JavaCompute 节点,我正在尝试生成一个连接来调用 oracle 函数
TESTDDBB
connectionUrlFormat='jdbc:oracle:thin:@x.x.x.x:1521:TESTDDBB;'
connectionUrlFormatAttr1=''
connectionUrlFormatAttr2=''
connectionUrlFormatAttr3=''
connectionUrlFormatAttr4=''
connectionUrlFormatAttr5=''
databaseName='TESTDDBB'
databaseSchemaNames='PROM'
databaseType='Oracle'
databaseVersion='11.2.0.4.0'
description='default_Description'
environmentParms='default_none'
jarsURL='C:\jdbc\lib'
jdbcProviderXASupport='true'
maxConnectionPoolSize='200'
portNumber='1521'
securityIdentity='devCredentials'
serverName='x.x.x.x'
type4DatasourceClassName='oracle.jdbc.xa.client.OracleXADataSource'
type4DriverClassName='oracle.jdbc.OracleDriver'
useDeployedJars='true'
public class GetUserData_JavaCompute extends MbJavaComputeNode {
public void evaluate(MbMessageAssembly inAssembly) throws MbException {
...
Connection conn = getJDBCType4Connection("TESTDDBB",JDBC_TransactionType.MB_TRANSACTION_AUTO);
try(CallableStatement callableStmt = conn.prepareCall("{ ? = call PROM.pkg_prop_2.getUserData(?)}");) {
...
}
...
}
}
问题是,当 IIB 尝试获取连接时,它没有找到数据源 java 类
...
com.ibm.broker.jdbctype4.jdbcdbasemgr.JDBCType4Connection@-53d4c850.createXAConnection 'java.lang.ClassNotFoundException: oracle.jdbc.xa.client.OracleXADataSource at java.net.URLClassLoader.findClass(URLClassLoader.java:609) at com.ibm.broker.classloading.JavaResourceClassLoader.findClass(JavaResourceClassLoader.java:181) at com.ibm.broker.classloading.SharedClassLoader.findClass(SharedClassLoader.java:215) at java.lang.ClassLoader.loadClassHelper(ClassLoader.java:925)
...
我在文件夹 C:\jdbc\lib 中有 ojdbc6.jar 驱动程序,并部署在集成服务器的共享库中,该库由包含 JavaCompute 节点的 RESTAPI 应用程序引用。我错过了什么?我尝试过使用 useDeployedJars true 和 false,并且 jarsURL 也与 'C:\jdbc\lib\ojdbc6' 一起使用,但没有成功。 windows中集成服务器的常用库在哪里?
【问题讨论】:
-
能否提供您在日志中看到的完整错误