Can't load IA 32-bit .dll on a AMD 64-bit platform
a
anonymous
started a topic
about 11 years ago
[This topic is migrated from our old forums. The original author name has been removed]
Hi,
I'm currently trying to setup my database connection to my Oracle database. I just got it working with the thin driver, but was wondering, why the OCI version did not work properly.
For both driver types one and the same jar file seems to be configured by default., in my case C:\Program Files\DbVisualizer\jdbc\oracle\ojdbc6.jar.
Now, whenever I specify Oracle Thin as driver for my connection, the database is opened as expected. Specifying the Oracle OCI version ends with an exception:
Details:
Type: java.lang.reflect.UndeclaredThrowableException
Stack Trace:
java.lang.reflect.UndeclaredThrowableException
at com.sun.proxy.$Proxy6.connect(Unknown Source)
at com.onseven.dbvis.db.A.G.Ľ(Z:3071)
at com.onseven.dbvis.db.A.G.Į(Z:2040)
at com.onseven.dbvis.db.A.E.Į(Z:2416)
at com.onseven.dbvis.db.A.D.execute(Z:808)
at com.onseven.dbvis.J.B.Y.ā(Z:1386)
at com.onseven.dbvis.J.B.K.Ă(Z:1374)
at com.onseven.dbvis.J.B.K.doInBackground(Z:1521)
at javax.swing.SwingWorker$1.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at javax.swing.SwingWorker.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.Exception: java.lang.UnsatisfiedLinkError: C:\oracle\product\11.2.0\client_1\BIN\ocijdbc11.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform
at com.onseven.dbvis.g.B.F$A.call(Z:210)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
... 3 more
Caused by: java.lang.UnsatisfiedLinkError: C:\oracle\product\11.2.0\client_1\BIN\ocijdbc11.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary1(Unknown Source)
at java.lang.ClassLoader.loadLibrary0(Unknown Source)
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at oracle.jdbc.driver.T2CConnection$1.run(T2CConnection.java:3178)
at java.security.AccessController.doPrivileged(Native Method)
at oracle.jdbc.driver.T2CConnection.loadNativeLibrary(T2CConnection.java:3174)
at oracle.jdbc.driver.T2CConnection.logon(T2CConnection.java:233)
at oracle.jdbc.driver.PhysicalConnection.(PhysicalConnection.java:508)
at oracle.jdbc.driver.T2CConnection.(T2CConnection.java:133)
at oracle.jdbc.driver.T2CDriverExtension.getConnection(T2CDriverExtension.java:53)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:510)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.onseven.dbvis.g.B.D.ā(Z:1413)
at com.onseven.dbvis.g.B.F$A.call(Z:1474)
... 5 more
I'm just asking myself why the driver now points to an oracle driver on my harddisk which I did not configure in the driver manager. I know that Oracle drivers are installed on my machine. But I never told DbVis to use it.
Any hints?
Regards, Thomas
1 Comment
Roger Bjärevall
said
about 11 years ago
[This reply is migrated from our old forums.]
Re: Can't load IA 32-bit .dll on a AMD 64-bit platform
Thomas,
The following text in the error you get indicates that there is a 32-bit dll in the PATH environment variable:
Caused by: java.lang.Exception: java.lang.UnsatisfiedLinkError: C:\oracle\product\11.2.0\client_1\BIN\ocijdbc11.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform
I suggest you verify the PATH and adjust it accordingly to instead include the 64-bit dll.
Regards
Roger
anonymous