【问题标题】:UnsatisfiedLinkError on Websphere Application Server 6.1 Data SourceWebsphere Application Server 6.1 数据源上的 UnsatisfiedLinkError
【发布时间】:2010-05-11 10:29:46
【问题描述】:

我无法在我的 WAS 实例上启动已安装的应用程序。我认为根本原因是 UnsatisfiedLinkError,如下所示:

原因:java.lang.UnsatisfiedLinkError: no ocijdbc10 in java.library.path 在 java.lang.ClassLoader.loadLibrary(ClassLoader.java:1682) 在 java.lang.Runtime.loadLibrary0(Runtime.java:822) 在 java.lang.System.loadLibrary(System.java:993) 在 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) 在 oracle.jdbc.driver.PhysicalConnection.(PhysicalConnection.java:441) 在 oracle.jdbc.driver.T2CConnection.(T2CConnection.java:132) 在 oracle.jdbc.driver.T2CDriverExtension.getConnection(T2CDriverExtension.java:78) 在 oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) 在 oracle.jdbc.pool.OracleDataSource.getPhysicalConnection(OracleDataSource.java:297) 在 oracle.jdbc.xa.client.OracleXADataSource.getPooledConnection(OracleXADataSource.java:515) 在 oracle.jdbc.xa.client.OracleXADataSource.getXAConnection(OracleXADataSource.java:159) 在 oracle.jdbc.xa.client.OracleXADataSource.getXAConnection(OracleXADataSource.java:133) 在 com.ibm.ws.rsadapter.spi.InternalGenericDataStoreHelper$1.run(InternalGenericDataStoreHelper.java:935) 在 com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:118) 在 com.ibm.ws.rsadapter.spi.InternalGenericDataStoreHelper.getPooledConnection(InternalGenericDataStoreHelper.java:972) 在 com.ibm.ws.rsadapter.spi.WSRdbDataSource.getPooledConnection(WSRdbDataSource.java:1625) 在 com.ibm.ws.rsadapter.spi.WSManagedConnectionFactoryImpl.createManagedConnection(WSManagedConnectionFactoryImpl.java:1220) 在 com.ibm.ejs.j2c.FreePool.createManagedConnectionWithMCWrapper(FreePool.java:1988) 在 com.ibm.ejs.j2c.FreePool.createOrWaitForConnection(FreePool.java:1660) 在 com.ibm.ejs.j2c.PoolManager.reserve(PoolManager.java:2341) 在 com.ibm.ejs.j2c.ConnectionManager.allocateMCWrapper(ConnectionManager.java:932) 在 com.ibm.ejs.j2c.ConnectionManager.allocateConnection(ConnectionManager.java:608) 在 com.ibm.ws.rsadapter.jdbc.WSJdbcDataSource.getConnection(WSJdbcDataSource.java:449) 在 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(未知来源) 在 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(未知来源) 在 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(未知来源) 在 org.apache.ojb.broker.core.DelegatingPersistenceBroker.getCollectionByQuery(未知来源) 在 org.apache.ojb.broker.core.DelegatingPersistenceBroker.getCollectionByQuery(未知来源) 在 com.ascential.xmeta.persistence.orm.impl.ojb.OjbPersistentEObjectPersistenceRegistry.loadPackageCache(OjbPersistentEObjectPersistenceRegistry.java:371) ... 115 更多

“was”用户的 LD_LIBRARY_PATH 变量是 /opt/oracle/product/10.2.0/lib

我还应该检查什么来修复这个错误?

请帮忙。

谢谢

【问题讨论】:

    标签: java oracle websphere


    【解决方案1】:

    验证 SystemOut.log 的跟踪标头中的“Java 库路径”是否包含“/opt/oracle/product/10.2.0/lib”。如果它不包含路径,那么您的 LD_LIBRARY_PATH 设置不会生效(可能变量未导出,或者您正在以不同的用户身份执行 startServer)。

    无论如何,我建议将“/opt/oracle/product/10.2.0/lib”添加到 JDBC 提供程序的本机库路径中,而不是尝试在操作系统级别进行设置。

    最后,仔细检查服务器是否具有访问本机库的适当操作系统权限。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-04-04
      • 1970-01-01
      • 1970-01-01
      • 2015-01-26
      • 2011-07-19
      • 2020-08-06
      • 1970-01-01
      相关资源
      最近更新 更多