on 2012 Jan 25 10:19 AM
Hi,
We have a problem with a third party Java application (we don't have the source) which tries to connect to our SQL Anywhere database using such connect string:
jdbc:ianywhere:ENG=demo;DBN=demo;UID=uid;PWD=pwd;LINKS=TCPIP;CON=conn name;DRIVER=SQL Anywhere 11;LOG=db.logWe have never had such a problem with that application before (it worked for some years before with ASA9, SA10, SA11, SA12). I'm not sure if that could be the reason but last weekend we had a loss of power so all machines were down. But after restart everything works fine except that application. I've put a LOG parameter in connect string but db.log file was not generated. The log of that application shows:
Could not initialize class ianywhere.ml.jdbcodbc.jdbc3.IDriverI tried to copy that application to another machine - it DOES connect successfully. So I tried to look for differences in environment variables (both machines run Windows OS) but nothing suspicious was found. What else should be checked? Thanks.
Request clarification before answering.
Could not initialize class ianywhere.ml.jdbcodbc.jdbc3.IDriver
This message could either be related to:
A reminder that if you're using a 64-bit Java Virtual Machine (JVM), you need to deploy the 64-bit 'dbjdbc##.dll' file, and if you're using the 32-bit JVM, the 32-bit 'dbjdbc##.dll' file.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Sorry, that was my mistake - the filenames in my original response were incorrect. Let me try a new response again and edit my original response...
I meant to say you need the files "jodbc.jar" (not "jdbc3.jar") and "dbjodbc11.dll" (not "dbjdbc11.dll") in your installation.
See: http://dcx.sybase.com/index.html#1101/en/dbprogramming_en11/pg-jdbc-sectb-3838486.html
The jdbc3.jar file does not exist in any of these 2 machines.
Does "jodbc.jar" exist and is it in your CLASSPATH for your Java application?
dbjdbc11.dll exists in C:\\Program Files\\SQL Anywhere 12\\Bin32
Does dbjodbc11.dll also exist?
Can you confirm if you are launching a 32-bit JVM for your application? (e.g. What does 'java -version' report:)
jodbc.jar exists in both machines in all SQL Anywhere directories (9,10, 11, 12) and in IQ directory in the "faulty" machine. CLASSPATH environment variable does not exist in any of these machines.
dbjodbc11.dll also exists in both machines.
'java -version' returns the same results in both machines:
java version "1.6.0_29" Java(TM) SE Runtime Environment (build 1.6.0_29-b11) Java HotSpot(TM) Client VM (build 20.4-b02, mixed mode, sharing)
User | Count |
---|---|
75 | |
30 | |
9 | |
8 | |
7 | |
6 | |
6 | |
5 | |
5 | |
5 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.