【发布时间】:2019-04-15 14:50:39
【问题描述】:
我正在尝试在部署在 Jboss 6 上的应用程序中获取 impala jdbc 连接; 下面是相同的 spring bean (ID1) 数据源定义。连接时出现异常;请参阅下面的例外情况。
它发生在 Java 1.8 版本中;如果我将其更改为 Java 1.7,它可以正常工作。
仅当应用程序还尝试使用 spring bean (ID2) 连接到 Oracle DB 时,才会发生以下异常。如果不使用Oracle连接ID2,则impala连接成功。
有人可以帮忙吗?
例外:
==java.lang.NullPointerException
===Stack trace...
java.util.Hashtable.put(Unknown Source)
com.cloudera.jdbc.common.AbstractDriver.copyProperties(Unknown Source)
com.cloudera.jdbc.common.AbstractDriver.connect(Unknown Source)
java.sql.DriverManager.getConnection(Unknown Source)
java.sql.DriverManager.getConnection(Unknown Source) org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFrom
DriverManager(DriverManagerDataSource.java:173) org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFrom
Driver(DriverManagerDataSource.java:164) org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnect onFromDriver(AbstractDriverBasedDataSource.java:149) org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnection(AbstractDriverBasedDataSource.java:119) org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:111) org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:77)
我尝试调试成AbstractDriver.copyProperties(),属性中的值如下-
{user=myuser, password=pwd}
在 Spring-config.xml 中定义的 bean
<bean id="ID1"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName"
value="com.cloudera.impala.jdbc41.Driver" />
<property name="url" value="jdbc:impala://impalahost:21050/;AuthMech=1;KrbRealm=myrealm;KrbServiceName=impala;KrbHostFQDN=xxx" />
</bean>
<bean id="ID2"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"
/>
<property name="url"
value="jdbc:oracle:thin:@//oraclehost:1523/DB" />
<property name="username" value="myuser" />
<property name="password" value="pwd" />
<property name="connectionProperties">
<props>
<prop key="defaultRowPrefetch">5000</prop>
</props>
</property>
</bean>
【问题讨论】:
标签: spring jdbc java-8 impala jboss-eap-6