2010-05-11 101 views
1

我無法在我的WAS實例上啓動已安裝的應用程序。相信的根本原因是UnsatisfiedLinkError其被示出如下:Websphere Application Server 6.1上的UnsatisfiedLinkError數據源

引起:java.lang.UnsatisfiedLinkError中:在的java.library.path 沒有ocijdbc10在java.lang.ClassLoader.loadLibrary(ClassLoader.java:1682 ) at java.lang.Runtime.loadLibrary0(Runtime.java:822) at Oracle.jdbc.driver.T2CConnection $ 1.run(T2CConnection.java: 3147) 在java.security.AccessController.doPrivileged(本機方法) 在oracle.jdbc.driver.T2CConnection.loadNativeLibrary(T2CConnection.java:3143) 在oracle.jdbc.driver.T2CConnection.logon(T2CConnection.java:221 ) at oracle.jdbc.driver.PhysicalC (PhysicalConnection.java:441) at oracle.jdbc.driver.T2CConnection。(T2CConnection.java:132) at oracle.jdbc.driver.T2CDriverExtension.getConnection(T2CDriverExtension.java:78) at oracle.jdbc。在oracle.jdbc.xa.client.OracleXADataSource.getPooledConnection(OracleXADataSource.java:515)上的oracle.jdbc.pool.OracleDataSource.getPhysicalConnection(OracleDataSource.java:297) 上的驅動程序:Oracle.oracle.oracle.connect(OracleDriver.java:801) 位於oracle.jdbc.xa.client.OracleXADataSource.getXAConnection(OracleXADataSource.java:133) at com.ibm.ws.rsadapter上。 spi.InternalGenericDataStoreHelper $ 1.run(InternalGenericDataStoreHelper.java:935) at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:118) at com.ibm.ws.rsadapter.spi.InternalGenericDataStoreHelper.getPooledConnection(InternalGenericDataStoreHelper.java:972) at com.ibm.ws .rsadapter.spi.WSRdbDataSource.getPooledConnection在com.ibm.ejs.j2c.FreePool.createManagedConnectionWithMCWrapper(WSRdbDataSource.java:1625) 在com.ibm.ws.rsadapter.spi.WSManagedConnectionFactoryImpl.createManagedConnection(WSManagedConnectionFactoryImpl.java:1220) (FreePool.java:1988) 在com.ibm.ejs.j2c.FreePool.createOrWaitForConnection(FreePool.java:1660) 在com.ibm.ejs.j2c.PoolManager.reserve(PoolManager.java:2341) 在玉米.ibm.ejs.j2c.ConnectionManager.allocateMCWrapper(ConnectionManager.java:932) at com.ibm.ejs.j2c .ConnectionManager.allocateConnection(ConnectionManager.java:608) at com.ibm.ws.rsadapter.jdbc.WSJdbcDataSource.getConnection(WSJdbcDataSource.java:449) at com.ibm.ws.rsadapter.jdbc.WSJdbcDataSource.getConnection(WSJdbcDataSource的.java:418) 在org.apache.ojb.broker.accesslayer.ConnectionFactoryAbstractImpl.newConnectionFromDataSource(來源不明) 在org.apache.ojb.broker.accesslayer.ConnectionFactoryAbstractImpl.lookupConnection(來源不明) 在org.apache.ojb .broker.accesslayer.ConnectionFactoryManagedImpl.lookupConnection(未知來源) 在org.apache.ojb.broker.accesslayer.ConnectionManagerImpl.getConnection(未知來源) 在org.apache.ojb.broker.accesslayer.StatementManager.getPreparedStatement(未知來源) at org.apache。 ojb.broker.accesslayer.JdbcAccessImpl.executeQuery(未知來源) 在org.apache.ojb.broker.accesslayer.RsQueryObject.performQuery(未知來源) 在org.apache.ojb.broker.accesslayer.RsIterator。(未知來源) 在org.apache.ojb.broker.core.RsIteratorFactoryImpl.createRsIterator(未知來源) 在org.apache.ojb.broker.core.PersistenceBrokerImpl.getRsIteratorFromQuery(未知來源) 在org.apache.ojb.broker.core。 PersistenceBrokerImpl.getIteratorFromQuery(Unknown Source) at org.apache.ojb.broker.core.QueryReferenceBroker。getCollectionByQuery(未知來源) 在org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(未知來源) 在org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(未知來源) 在org.apache.ojb .broker.core.PersistenceBrokerImpl.getCollectionByQuery(Unknown Source) at org.apache.ojb.broker.core.DelegatingPersistenceBroker.getCollectionByQuery(Unknown Source) at org.apache.ojb.broker.core.DelegatingPersistenceBroker.getCollectionByQuery(Unknown Source) 在com.ascential.xmeta.persistence.orm.impl.ojb.OjbPersistentEObjectPersistenceRegistry.loadPackageCache(OjbPersistentEObjectPersistenceRegistry.java:371) ... 115多個

'was'用戶的我的LD_LIBRARY_PATH變量是/opt/oracle/product/10.2.0/lib

我還應該檢查什麼來解決此錯誤?

請幫忙。

感謝

回答

1

驗證SystemOut.log中的道頭 「Java庫路徑」 包含 「/opt/oracle/product/10.2.0/lib」。如果它沒有包含路徑,那麼你的LD_LIBRARY_PATH設置沒有生效(可能是變量沒有被導出,或者你正在以不同的用戶執行startServer)。

無論如何,我建議設置爲JDBC提供程序的本機庫路徑添加「/opt/oracle/product/10.2.0/lib」,而不是嘗試在操作系統級別設置它。

最後,仔細檢查服務器是否具有訪問本機庫的適當操作系統權限。

相關問題