Web项目连接JNDI 提示:Error while extracting DatabaseMetaData; 关闭的连接

在Web项目中,Spring连接JNDI时好时坏,没有找到错误原因,请高手帮忙!

org.springframework.jdbc.support.SQLErrorCodesFactory.getErrorCodes(SQLErrorCodesFactory.java:234)
WARN Error while extracting database product name - falling back to empty error codes
org.springframework.jdbc.support.MetaDataAccessException: Error while extracting DatabaseMetaData; nested exception is java.sql.SQLException: 关闭的连接
java.sql.SQLException: 关闭的连接
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:208)
at oracle.jdbc.driver.PhysicalConnection.getMetaData(PhysicalConnection.java:1517)
at weblogic.jdbc.wrapper.Connection.getMetaData(Connection.java:337)
at org.springframework.jdbc.support.JdbcUtils.extractDatabaseMetaData(JdbcUtils.java:172)
at org.springframework.jdbc.support.JdbcUtils.extractDatabaseMetaData(JdbcUtils.java:207)
at org.springframework.jdbc.support.SQLErrorCodesFactory.getErrorCodes(SQLErrorCodesFactory.java:187)
at org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.setDataSource(SQLErrorCodeSQLExceptionTranslator.java:127)
at org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.<init>(SQLErrorCodeSQLExceptionTranslator.java:93)
at org.springframework.jdbc.support.JdbcAccessor.getExceptionTranslator(JdbcAccessor.java:96)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:294)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:348)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:352)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:356)
at org.springframework.jdbc.core.JdbcTemplate.queryForObject(JdbcTemplate.java:364)
at org.springframework.jdbc.core.JdbcTemplate.queryForObject(JdbcTemplate.java:369)
at org.springframework.jdbc.core.JdbcTemplate.queryForInt(JdbcTemplate.java:378)
at cn.sh.ideal.tel_assistant.TelAssistantDao.getUintInfoCount(TelAssistantDao.java:624)
at cn.sh.ideal.tel_assistant.TelAssistantAction.queryFirm(TelAssistantAction.java:412)
at jrockit.reflect.VirtualNativeMethodInvoker.invoke(Ljava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source)
at java.lang.reflect.Method.invoke(Ljava.lang.Object;[Ljava.lang.Object;I)Ljava.lang.Object;(Unknown Source)
at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:270)

jndi连接的时候,是否持久化了?否则会自动断开,还有可能是应用和db不在一个数据中心,连接长时间不用也会自动断开!
温馨提示:答案为网友推荐,仅供参考
相似回答