Развертывание ojdbc14.jar в модуле кода для модуля кода FileNet

Я пытаюсь развернуть пару файлов jar в модуле кода для действия события в FileNet P8 4.0 (сервер FileNet работает на WebSphere 6.1). Один из этих jar-файлов — мой пользовательский код, а другой — тонкий драйвер для Oracle, называемый ojdbc14.jar (я также пытался использовать ojdbc15.jar). strong>), пользовательский код использует jar-файл oracle для подключения к источнику данных и получения соединения с использованием имени JNDI.

Когда действие события выполняется (после вызова подписки), код в моем пользовательском модуле называется OK, проблема возникает, когда моему коду необходимо загрузить классы из jar-файла Oracle, я получаю эту причину:

ОШИБКА — Пн, 21 сентября, 16:42:17 UTC 2009 — com.ibm.websphere.naming.CannotInstantiateObjectException: Исключение возникло при обработке JNDI NamingManager объекта javax.naming.Reference. [Корневое исключение — java.lang.reflect.InvocationTargetException] в com.ibm.ws.naming.util.Helpers.processSerializedObjectForLookupExt(Helpers.java:1000) в com.ibm.ws.naming.util.Helpers. processSerializedObjectForLookup(Helpers.java:705) в com.ibm.ws.naming.jndicos.CNContextImpl.processResolveResults(CNContextImpl.java:2093)

...

Вызвано: java.lang.NoClassDefFoundError: oracle.jdbc.driver.OracleLog в com.ibm.ws.rsadapter.dbutils.impl.OracleUtilityImpl.setLogVolume(OracleUtilityImpl.java:85) в com.ibm .ws.rsadapter.spi.InternalOracleDataStoreHelper.setProperties(InternalOracleDataStoreHelper.java:142) в com.ibm.ws.rsadapter.spi.WSRdbDataSource.(WSRdbDataSource.java:846) в com.ibm.ws.rsadapter.spi.WSManagedConnectionFactoryImpl. setDataSourceProperties(WSManagedConnectionFactoryImpl.java:1947) ... еще 43

...

Вызвано: java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleLog в java.net.URLClassLoader.findClass(URLClassLoader.java:496) в com.ibm.ws.bootstrap.ExtClassLoader.findClass (ExtClassLoader.java:132) в java.lang.ClassLoader.loadClass(ClassLoader.java:631) в com.ibm.ws.bootstrap.ExtClassLoader.loadClass(ExtClassLoader.java:87) в java.lang.ClassLoader.loadClass( ClassLoader.java:597) ... еще 48

Поскольку я развертываю банку оракула с модулем кода, не должен ли FileNet найти класс? Как вы думаете, мне нужно настроить что-то еще?

Заранее спасибо.


person Abel Morelos    schedule 21.09.2009    source источник
comment
К сведению: ojdbc14.jar сейчас довольно старый (предназначен для Java 1.4 [4]). Я бы обновился до ojdbc5 или ojdbc6.jar в зависимости от вашей среды сборки (если, конечно, вы на самом деле все еще не используете Java 1.4).   -  person Gandalf    schedule 21.09.2009
comment
Спасибо за наблюдение, я попробовал ojdbc5.jar, и у меня все еще возникает та же проблема, по крайней мере, мы можем сказать, что проблема не в этом файле jar.   -  person Abel Morelos    schedule 22.09.2009


Ответы (2)


Возможно ли, чтобы ваше приложение использовало собственные пулы соединений JDBC WebSphere? Когда вы настраиваете пул для конкретной базы данных, вы устанавливаете все драйверы конкретного поставщика.

Как правило, всевозможные конфигурации пути к классам и загрузчикам классов возникают, когда вы пытаетесь поместить код инфраструктуры в свои собственные приложения. Я не знаю наверняка, относится ли это к вашей ситуации, но я считаю, что оставление на известном пути в WebSphere, как правило, дает самые гладкие результаты.

person djna    schedule 22.09.2009
comment
Спасибо, djna, учту ваши предложения. Основная причина моей проблемы заключалась в том, что файл ojdbc14.jar был поврежден, и каким-то образом был поврежден файл ojdbc5.jar. Спасибо! - person Abel Morelos; 29.09.2009

Я нашел проблему ... каким-то образом файл ojdbc14.jar был поврежден, поэтому, даже когда путь к классам был правильным, и независимо от того, что я пытался исправить, проблема всегда была.

Спасибо за комментарии!

person Abel Morelos    schedule 29.09.2009