我已经将我的项目移到了tomcat6.0目录下的webapps目录中,并使用端口8080在更新后的url下运行。有没有人见过这个错误?
**java.lang.UnsatisfiedLinkError: Native Library D:\oracle\product\10.2.0\client_1\BIN\ocijdbc10.dll already loaded in another classloader**
java.lang.ClassLoader.loadLibrary0(Unknown Source)
java.lang.ClassLoader.loadLibrary(Unknown Source)
java.lang.Runtime.loadLibrary0(Unknown Source)
java.lang.System.loadLibrary(Unknown Source)
oracle.jdbc.driver.T2CConnection$1.run(T2CConnection.java:3147)
java.security.AccessController.doPrivileged(Native Method)
oracle.jdbc.driver.T2CConnection.loadNativeLibrary(T2CConnection.java:3143)
oracle.jdbc.driver.T2CConnection.logon(T2CConnection.java:221)
oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:441)
oracle.jdbc.driver.T2CConnection.<init>(T2CConnection.java:132)
oracle.jdbc.driver.T2CDriverExtension.getConnection(T2CDriverExtension.java:78)
oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801)
java.sql.DriverManager.getConnection(Unknown Source)
java.sql.DriverManager.getConnection(Unknown Source)
我很好奇这个堆栈跟踪的第一行是什么。这是什么意思?如果我的程序需要更多信息,请让我知道。提前谢谢你。桑尼
发布于 2014-08-12 23:20:33
正如错误所说-你不能从两个独立的class loaders
加载dll库。您很可能有两个单独的Web应用程序使用到Oracle的连接。请尝试将oracle库jar移动到Tomcat shared/lib
文件夹,以便Tomcat公共类加载器只加载一次库。
发布于 2014-08-13 22:04:00
大家好,我解决了我自己的问题。我必须将oracle数据库的路径更改为jdbc瘦客户端url,而不是直接连接到oracle数据库。最初我使用语句: intfdb.JDBCOCIDRV=jdbc:oracle:oci:@GPSTRKPD.na.jnj.com来连接,这是导致错误的原因。我将我的声明更改为: jdbc:oracle:thin:@psgtwp0.na.jnj.com:1531:gpstrkpd,它现在工作得很好。感谢您的所有投入。桑尼
https://stackoverflow.com/questions/25267369
复制相似问题