You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by Scott Hiett <Sc...@novell.com> on 2002/06/20 17:21:43 UTC

JDBC conncection error with servlets, but not with application

Sorry, I sent this before with no subject.

I am having a problem that I simply cannot figure out.

I have a MS Access database defined through ODBC, and when I connect
through an appliation, no problem.  but when my servlet tries to connect
to the same db, it can not do it, and it throws an exception.  The
servlet is running under the latest Tomcat relese 4.0.4

Here is the offending code:

    private String jdbcDriverName = "sun.jdbc.odbc.JdbcOdbcDriver";
    private static String url = "jdbc :o dbc:ETC";
        try
	{
	    Class.forName(jdbcDriverName).newInstance();
            DriverManager.setLogStream(System.out);
	    _conn = DriverManager.getConnection(url,"","");
	}

The error occurs while trying the getConnection();

I turned on JDBC logging, and this is the output.

DriverManager.getConnection("jdbc :o dbc:ETC")
    trying
driver[className=sun.jdbc.odbc.JdbcOdbcDriver,sun.jdbc.odbc.JdbcOdbcDriver@4e3f41]
*Driver.connect (jdbc :o dbc:ETC)
JDBC to ODBC Bridge: Checking security
No SecurityManager present, assuming trusted application/applet
Allocating Environment handle (SQLAllocEnv)
hEnv=5378720
Allocating Connection handle (SQLAllocConnect)
hDbc=5378888
Connecting (SQLDriverConnect), hDbc=5378888, szConnStrIn=DSN=ETC
RETCODE = -1
ERROR - Generating SQLException...
ERROR - S1000 General error
java.sql.SQLException: General error
	at
sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6060)
	at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:6188)
	at sun.jdbc.odbc.JdbcOdbc.SQLDriverConnect(JdbcOdbc.java:2458)
	at
sun.jdbc.odbc.JdbcOdbcConnection.initialize(JdbcOdbcConnection.java:320)
	at
sun.jdbc.odbc.JdbcOdbcDriver.connect(JdbcOdbcDriver.java:163)
	at java.sql.DriverManager.getConnection(DriverManager.java:517)
	at java.sql.DriverManager.getConnection(DriverManager.java:177)
	at
dbconnection.DBConnPoolMgr.getConnection(DBConnPoolMgr.java:74)
	at dbconnection.DBConnector.getProductIDs(DBConnector.java:146)
	at dbconnection.DBServlet.doGet(DBServlet.java:80)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
	at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
	at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243)
	at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
	at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:190)
	at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
	at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2343)
	at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
	at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
	at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
	at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
	at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170)
	at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
	at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:468)
	at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
	at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
	at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
	at
org.apache.ajp.tomcat4.Ajp13Processor.process(Ajp13Processor.java:429)
	at
org.apache.ajp.tomcat4.Ajp13Processor.run(Ajp13Processor.java:495)
	at java.lang.Thread.run(Thread.java:484)
SQLException: SQLState(S1000)
Closing connection (SQLFreeConnect), hDbc=5378888
Closing environment (SQLFreeEnv), hEnv=5378720
getConnection failed: java.sql.SQLException: General error


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>