Hi all
I'm having no "luck" trying my first-time connect to an I-SE server from a
Java application, using JDBC.
I'm always getting then error:
"Error: java.lang.Class NotFoundExcepti on: com.informix.jd bc.IfxDriver"
I suspect the problem is in my CLASSPATH system variable, but I don't know
how to set it. Or, perhaps, the strings I'm using aren't correct.
Facts:
1) My network is "up and running";
2) Informix-SE is on a Unix remote machine;
3) My Java app is on Windows XP Home;
4) Informix Client-SDK 2.81 TC3 is installed on XP;
5) ODBC has no problems
(I've an MS-Access app that retrieves data from my SE server. My Java
app, with JDBC-ODBC bridge, also works fine);
6) Using Informix Client-SDK dbping, every connection are made successfully,
except... JDBC!;
7) In JDBC dbping tab, only "com.informix.j dbc.IfxDriver" seems to be the
right value since the other two options appears to be for db2
(COM.ibm.db2.jd bc.app.DB2Drive r and COM.ibm.db2.jdb c.net.DB2Driver )
8) I'm trying protocol "jdbc:infor mix-sqli". The other option is "jdbc:db2"
(dbping);
9) My Java app:
try {
//Class.forName(" sun.jdbc.odbc.J dbcOdbcDriver") ; //jdbc-odbc
bridge: works fine!
Class.forName(" com.informix.jd bc.IfxDriver");
} catch(java.lang .ClassNotFoundE xception e) {
System.err.prin t("ClassNotFoun dException: ");
System.err.prin tln(e.getMessag e());
}
try {
//String url = "jdbc:odbc:ifx_ dsn"; //jdbc-odbc bridge: works
fine!
String url = "jdbc:infor mix-sqli"
Connection con = DriverManager.g etConnection(ur l, "login",
"password") ;
Statement stmt = con.createState ment();
//retrieval of values
(...)
}
stmt.close();
con.close();
} catch(SQLExcept ion ex) {
System.err.prin tln("SQLExcepti on: " + ex.getMessage() );
}
On JDBC dbping tab is written "This Utility assumes that you have a JDBC
driver installed and a CLASSPATH set before running DBPING"
a) What do they mean by having a JDBC driver installed? Isn't this driver
installed when I installed Informix-SDK? If not, how can I get it?
b) Do I have to do something like I did to the ODBC driver (by creating and
configuring a
DSN)? Where and how?
c) I know CLASSPATH system variable isn't set. Should I set it in my system?
By what value? By a path within Informix-SDK folders? Should CLASSPATH be
set anywhere else (e.g. setnet32)?
I suspect the problem is in my CLASSPATH system variable, but I don't know
how to set it. Or, perhaps, the strings I'm using aren't correct.
Can Anyone help?
Thanks in advance,
Jorge Cecilio
I'm having no "luck" trying my first-time connect to an I-SE server from a
Java application, using JDBC.
I'm always getting then error:
"Error: java.lang.Class NotFoundExcepti on: com.informix.jd bc.IfxDriver"
I suspect the problem is in my CLASSPATH system variable, but I don't know
how to set it. Or, perhaps, the strings I'm using aren't correct.
Facts:
1) My network is "up and running";
2) Informix-SE is on a Unix remote machine;
3) My Java app is on Windows XP Home;
4) Informix Client-SDK 2.81 TC3 is installed on XP;
5) ODBC has no problems
(I've an MS-Access app that retrieves data from my SE server. My Java
app, with JDBC-ODBC bridge, also works fine);
6) Using Informix Client-SDK dbping, every connection are made successfully,
except... JDBC!;
7) In JDBC dbping tab, only "com.informix.j dbc.IfxDriver" seems to be the
right value since the other two options appears to be for db2
(COM.ibm.db2.jd bc.app.DB2Drive r and COM.ibm.db2.jdb c.net.DB2Driver )
8) I'm trying protocol "jdbc:infor mix-sqli". The other option is "jdbc:db2"
(dbping);
9) My Java app:
try {
//Class.forName(" sun.jdbc.odbc.J dbcOdbcDriver") ; //jdbc-odbc
bridge: works fine!
Class.forName(" com.informix.jd bc.IfxDriver");
} catch(java.lang .ClassNotFoundE xception e) {
System.err.prin t("ClassNotFoun dException: ");
System.err.prin tln(e.getMessag e());
}
try {
//String url = "jdbc:odbc:ifx_ dsn"; //jdbc-odbc bridge: works
fine!
String url = "jdbc:infor mix-sqli"
Connection con = DriverManager.g etConnection(ur l, "login",
"password") ;
Statement stmt = con.createState ment();
//retrieval of values
(...)
}
stmt.close();
con.close();
} catch(SQLExcept ion ex) {
System.err.prin tln("SQLExcepti on: " + ex.getMessage() );
}
On JDBC dbping tab is written "This Utility assumes that you have a JDBC
driver installed and a CLASSPATH set before running DBPING"
a) What do they mean by having a JDBC driver installed? Isn't this driver
installed when I installed Informix-SDK? If not, how can I get it?
b) Do I have to do something like I did to the ODBC driver (by creating and
configuring a
DSN)? Where and how?
c) I know CLASSPATH system variable isn't set. Should I set it in my system?
By what value? By a path within Informix-SDK folders? Should CLASSPATH be
set anywhere else (e.g. setnet32)?
I suspect the problem is in my CLASSPATH system variable, but I don't know
how to set it. Or, perhaps, the strings I'm using aren't correct.
Can Anyone help?
Thanks in advance,
Jorge Cecilio
Comment