Pergunta

Eu estou tentando deploy um par de arquivos jar em um módulo de código para uma ação evento em FileNet P8 4.0 (o FileNet runs servidor no WebSphere 6.1 ). Um destes frascos é o meu código personalizado, eo outro frasco é o driver fino para do Oracle chamado ojdbc14.jar (Eu também tentei com ojdbc15.jar ), o código personalizado usa o frasco oráculo, a fim de se conectar a uma fonte de dados e obter uma conexão usando o JNDI nome.

Quando a ação do evento é executado (após uma subscrição é invocado) o código no meu módulo personalizado é chamado OK, o problema ocorre quando as minhas necessidades de código para classes carga do frasco Oracle, eu recebo esta causa:

ERRO - Mon 21 de setembro 16:42:17 UTC 2009 - com.ibm.websphere.naming.CannotInstantiateObjectException: exceção ocorreu enquanto o JNDI NamingManager estava processando um javax.naming.Reference objeto. [Exceção raiz é java.lang.reflect.InvocationTargetException] em com.ibm.ws.naming.util.Helpers.processSerializedObjectForLookupExt (Helpers.java:1000) em com.ibm.ws.naming.util.Helpers.processSerializedObjectForLookup (Helpers.java:705) em com.ibm.ws.naming.jndicos.CNContextImpl.processResolveResults (CNContextImpl.java:2093)

...

Causada por: java.lang.NoClassDefFoundError: oracle.jdbc.driver.OracleLog em com.ibm.ws.rsadapter.dbutils.impl.OracleUtilityImpl.setLogVolume (OracleUtilityImpl.java:85) em com.ibm.ws.rsadapter.spi.InternalOracleDataStoreHelper.setProperties (InternalOracleDataStoreHelper.java:142) em com.ibm.ws.rsadapter.spi.WSRdbDataSource. (WSRdbDataSource.java:846) em com.ibm.ws.rsadapter.spi.WSManagedConnectionFactoryImpl.setDataSourceProperties (WSManagedConnectionFactoryImpl.java:1947) ... mais 43

...

Causada por: java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleLog em java.net.URLClassLoader.findClass (URLClassLoader.java:496) em com.ibm.ws.bootstrap.ExtClassLoader.findClass (ExtClassLoader.java:132) em java.lang.ClassLoader.loadClass (ClassLoader.java:631) em com.ibm.ws.bootstrap.ExtClassLoader.loadClass (ExtClassLoader.java:87) em java.lang.ClassLoader.loadClass (ClassLoader.java:597) ... mais 48

Desde que eu estou implantando o frasco oráculo com o módulo de código, não deve FileNet deve ser capaz de encontrar a classe? Você acha que eu preciso configurar algo mais?

Agradecemos antecipadamente.

Foi útil?

Solução 2

Eu encontrei o problema ... de alguma forma o arquivo ojdbc14.jar foi corrompido, por isso mesmo quando o classpath estava correto e não importa o que eu tentei corrigir o problema, o problema era sempre lá.

Obrigado pelos comentários!

Outras dicas

É possível que seu aplicativo para usar próprios pools de conexão JDBC do WebSphere? Quando você configura uma piscina para um banco de dados particulr você recebe todos os drivers específicos do fornecedor instalado lá.

Geralmente, todos os tipos de classpath e classloader confisions acontecer quando você tenta código de infra-estrutura local em seus próprios aplicativos. Eu não sei com certeza que este é o caso para a sua situação, mas eu encontrar taht permanecer no caminho conhecido no WebSphere tende a dar os resultados mais suaves.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top