Emeric,
Il semble que l'on puisse avoir ce type de problème lorsque les
librairies oracle sont déclarées dans les librairies du serveur et
dans l'application (problème de classloader).
@+
> I found a version of the source file of OracleValidConnectionChecker:
http://www.docjar.com/html/api/org/jboss/resource/adapter/jdbc/vendor...
>
> And this checker calls *with java.lang.reflect* the method
> "pingDatabase" assuming that the parameter implementing the interface
> java.sql.Connection is in fact of the class
> oracle.jdbc.driver.OracleConnection.
> And with JavaMelody this is not the case.
>
> I would suggest to the author of OracleValidConnectionChecker.java
> (Adrian Brock, adrian at
jboss.org is given in the file) to replace
> the line
> Integer status = (Integer) ping.invoke(c, params);
> with
> Integer status = (Integer) ping.invoke(c.unwrap(Connection.class),
> params);
> if jboss is run inside a 1.6 jvm.
>
> For reference,since Java 1.6, the Connection interface extends the
> Wrapper interface with the unwrap method.
> Javadoc:
http://java.sun.com/javase/6/docs/api/java/sql/Wrapper.html#unwrap%28...
> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
> > 25)
> > at java.lang.reflect.Method.invoke(Method.java:597)
> > at
> > org.jboss.resource.adapter.jdbc.vendor.OracleValidConnectionChecker.isValidConnection(OracleValidConnectionChecker.java:
> > 68)
> > at
> > org.jboss.resource.adapter.jdbc.BaseWrapperManagedConnectionFactory.isValidConnection(BaseWrapperManagedConnectionFactory.java:
> > 458)
> > at
> > org.jboss.resource.adapter.jdbc.BaseWrapperManagedConnection.checkValid(BaseWrapperManagedConnection.java:
> > 322)
> > at
> > org.jboss.resource.adapter.jdbc.xa.XAManagedConnectionFactory.matchManagedConnections(XAManagedConnectionFactory.java:
> > 182)
> > at
> > org.jboss.resource.connectionmanager.InternalManagedConnectionPool.getConnection(InternalManagedConnectionPool.java:
> > 213)
> > at org.jboss.resource.connectionmanager.JBossManagedConnectionPool
> > $BasePool.getConnection(JBossManagedConnectionPool.java:575)
> > at
> > org.jboss.resource.connectionmanager.BaseConnectionManager2.getManagedConnection(BaseConnectionManager2.java:
> > 347)
> > at
> > org.jboss.resource.connectionmanager.TxConnectionManager.getManagedConnection(TxConnectionManager.java:
> > 330)
> > at
> > org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(BaseConnectionManager2.java:
> > 402)
> > at
> > org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionManagerProxy.allocateConnection(BaseConnectionManager2.java:
> > 849)
> > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> > at
> > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
> > 39)
> > at
> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
> > 25)
> > at java.lang.reflect.Method.invoke(Method.java:597)
> > at net.bull.javamelody.JdbcWrapper$3.invoke(JdbcWrapper.java:491)
> > at net.bull.javamelody.JdbcWrapper
> > $DelegatingInvocationHandler.invoke(JdbcWrapper.java:250)
> > at $Proxy313.allocateConnection(Unknown Source)
> > at
> > org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:
> > 89)
> > at org.springframework.scheduling.quartz.LocalDataSourceJobStore
> > $2.getConnection(LocalDataSourceJobStore.java:125)
> > at
> > org.quartz.utils.DBConnectionManager.getConnection(DBConnectionManager.java:
> > 112)
> > at
> > org.quartz.impl.jdbcjobstore.JobStoreCMT.getNonManagedTXConnection(JobStoreCMT.java:
> > 164)
> > at
> > org.quartz.impl.jdbcjobstore.JobStoreSupport.executeInNonManagedTXLock(JobStoreSupport.java:
> > 3744)
> > at
> > org.quartz.impl.jdbcjobstore.JobStoreSupport.acquireNextTrigger(JobStoreSupport.java:
> > Marc- Masquer le texte des messages précédents -
>
> - Afficher le texte des messages précédents -