Domanda

Sto cercando di deploy un paio di file vaso in un modulo di codice per un'azione evento in FileNet P8 4.0 (la FileNet Server gira su WebSphere 6.1 ). Uno di questi vasi è il mio codice personalizzato, e l'altro vaso è il driver sottile per Oracle denominato ojdbc14.jar (ho anche provato con ojdbc15.jar ), il codice personalizzato utilizza il vaso di Oracle per connettersi a un'origine dati e ottenere una connessione utilizzando il JNDI nome.

Quando si esegue l'azione evento (dopo una sottoscrizione viene richiamato) il codice nel mio modulo personalizzato si chiama OK, il problema si verifica quando il mio codice deve classi di carico dal vaso di Oracle, ottengo questa causa:

ERRORE - Lun 21 Set 16:42:17 UTC 2009 - com.ibm.websphere.naming.CannotInstantiateObjectException: Si è verificata un'eccezione mentre il JNDI NamingManager stava elaborando un javax.naming.Reference oggetto. [Eccezione Root è java.lang.reflect.InvocationTargetException]         a com.ibm.ws.naming.util.Helpers.processSerializedObjectForLookupExt (Helpers.java:1000)         a com.ibm.ws.naming.util.Helpers.processSerializedObjectForLookup (Helpers.java:705)         a com.ibm.ws.naming.jndicos.CNContextImpl.processResolveResults (CNContextImpl.java:2093)

...

Causato da: java.lang.NoClassDefFoundError: oracle.jdbc.driver.OracleLog         a com.ibm.ws.rsadapter.dbutils.impl.OracleUtilityImpl.setLogVolume (OracleUtilityImpl.java:85)         a com.ibm.ws.rsadapter.spi.InternalOracleDataStoreHelper.setProperties (InternalOracleDataStoreHelper.java:142)         a com.ibm.ws.rsadapter.spi.WSRdbDataSource. (WSRdbDataSource.java:846)         a com.ibm.ws.rsadapter.spi.WSManagedConnectionFactoryImpl.setDataSourceProperties (WSManagedConnectionFactoryImpl.java:1947)         ... altro 43

...

Causato da: java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleLog         a java.net.URLClassLoader.findClass (URLClassLoader.java:496)         a com.ibm.ws.bootstrap.ExtClassLoader.findClass (ExtClassLoader.java:132)         a java.lang.ClassLoader.loadClass (ClassLoader.java:631)         a com.ibm.ws.bootstrap.ExtClassLoader.loadClass (ExtClassLoader.java:87)         a java.lang.ClassLoader.loadClass (ClassLoader.java:597)         ... altro 48

Dal momento che sto distribuzione del vaso Oracle con il modulo di codice, non dovrebbe FileNet dovrebbe essere in grado di trovare la classe? Pensi che ho bisogno di configurare qualcosa di diverso?

Grazie in anticipo.

È stato utile?

Soluzione 2

Ho trovato il problema ... in qualche modo il file ojdbc14.jar ha danneggiato, quindi, anche se il percorso di classe è stato corretto e non importa quello che ho cercato di risolvere il problema, il problema era sempre lì.

Grazie per i commenti!

Altri suggerimenti

E 'possibile per l'applicazione per utilizzare proprio pool di connessioni JDBC di WebSphere? Quando si imposta un pool per un database particulr si ottengono tutti i driver specifici del produttore installati lì.

In generale, tutti i tipi di percorso di classe e classloader confisions derivarne quando si tenta di inserire il codice di infrastruttura nelle proprie applicazioni. Non so per certo che questo è il caso per la vostra situazione, ma io trovo taht rimanere sul sentiero conosciuto in WebSphere tende a dare i risultati più lisci.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top