Oracle连接池上的一个很奇怪的问题
@wenshao 你好,想跟你请教个问题:
系统刚启动的时候是没有问题的,运行一段时间以后,就抛出了下面这个奇怪的问题
java.lang.LinkageError: loader constraint violation in interface itable initialization: when resolving method "weblogic.jdbc.wrapper.PreparedStatement_oracle_jdbc_driver_T4CPreparedStatement.setResultSetCache(Loracle/jdbc/OracleResultSetCache;)V" the class loader (instance of weblogic/utils/classloaders/ChangeAwareClassLoader) of the current class, weblogic/jdbc/wrapper/PreparedStatement_oracle_jdbc_driver_T4CPreparedStatement, and the class loader (instance of sun/misc/Launcher$AppClassLoader) for interface weblogic/jdbc/vendor/oracle/OracleStatement have different Class objects for the type oracle/jdbc/OracleResultSetCache used in the signature
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
at java.lang.Class.getConstructor0(Class.java:2699)
at java.lang.Class.newInstance0(Class.java:326)
at java.lang.Class.newInstance(Class.java:308)
at weblogic.utils.wrapper.WrapperFactory.createWrapper(WrapperFactory.java:162)
at weblogic.jdbc.wrapper.JDBCWrapperFactory.getWrapper(JDBCWrapperFactory.java:175)
at weblogic.jdbc.wrapper.PreparedStatement.makePreparedStatement(PreparedStatement.java:56)
at weblogic.jdbc.wrapper.PreparedStatement.makePreparedStatement(PreparedStatement.java:35)
at weblogic.jdbc.wrapper.Connection.prepareStatement(Connection.java:559)
at org.hibernate.jdbc.AbstractBatcher.getPreparedStatement(AbstractBatcher.java:497)
at org.hibernate.jdbc.AbstractBatcher.prepareStatement(AbstractBatcher.java:94)
at org.hibernate.jdbc.AbstractBatcher.prepareStatement(AbstractBatcher.java:87)
at org.hibernate.jdbc.AbstractBatcher.prepareBatchStatement(AbstractBatcher.java:218)
at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2220)
at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2656)
at org.hibernate.action.EntityInsertAction.execute(EntityInsertAction.java:52)
at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:248)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:232)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:139)
at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)
at org.springframework.orm.hibernate3.HibernateAccessor.flushIfNecessary(HibernateAccessor.java:390)
at org.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:407)
at org.springframework.orm.hibernate3.HibernateTemplate.executeWithNativeSession(HibernateTemplate.java:374)
at org.springframework.orm.hibernate3.HibernateTemplate.save(HibernateTemplate.java:683)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您好,问题解决了吗?我们也遇到这个问题,好像是weblogic自带的jdbc驱动与应用带的jdbc驱动有类重复,发生冲突,您具体是怎么解决的?
好像是Oracle驱动jar包冲突,检查一下项目引用的Oracle驱动,删除多余的。
没看到druid的栈,和druid无关吧