JDBC-Treiber laden-Problem im JDBC-Verbindungs-pooling

Ich habe setup die JDBC-Verbindungs-pooling und zeigte die folgenden Fehler, wenn ich führen eine Beispiel-JSP-Seite, die versuchen, eine Verbindung zu verwenden.

Error occurred org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot load 
    JDBC driver class 'com.sybase.jdbc3.jdbc.SybDriver' 

Ich den jconn2.jar sowohl in common/lib und web-inf/lib als gut.
Wie kann ich den Fehler beheben?

    The context.xml

<Context>
        <Resource name="jdbc/mysybase" auth="Container"
                  type="javax.sql.DataSource" driverClassName="com.sybase.jdbc3.jdbc.SybDriver"
                  url="jdbc:sybase:Tds:H2S33.studtrack.com:2025/student"
                  username="scott" password="tiger" maxActive="20" maxIdle="10"
                  maxWait="-1"/>
    </Context>


    In The web.xml file
    <resource-ref>
     <description>Sybase Datasource example</description>
     <res-ref-name>jdbc/mysybase</res-ref-name>
     <res-type>javax.sql.DataSource</res-type>
     <res-auth>Container</res-auth>
    </resource-ref>


    And the jsp page

    <%@page import="java.sql.*"%>
    <%@page import="javax.naming.Context"%>
    <%@page import="javax.naming.InitialContext"%>
    <%@page import="java.sql.Connection"%>
    <%@page import="java.sql.SQLException"%>
    <%@page import="java.sql.ResultSet"%>
    <%@page import="javax.sql.DataSource"%>
    <html>
    <head>
    <title>Obtaining a Connection</title>
    </head>
    <body>

    <%
        Connection conn = null;
        ResultSet result = null;
        Statement stmt = null;
         try {
           Context initContext = new InitialContext();
        Context envContext  = (Context)initContext.lookup("java:/comp/env");
           DataSource ds = (DataSource)envContext.lookup("jdbc/mysybase");
           conn = ds.getConnection();
        if (conn != null) 
        {
            String message = "Got Connection " + conn.toString() + ", ";
            out.write(message);
        }
        else
        {
            out.write("hello no conn obtained");

        }

            stmt = conn.createStatement();
            result = stmt.executeQuery("SELECT * FROM Student");
        while(result.next())
        {
            out.write(result.getString("name"));
        }

         }
         catch (SQLException e) {
             out.write("Error occurred " + e);
          }

    %>

    </body>
    </html>`
Haben Sie alle anderen relevanten JAR-Dateien? wie commons dbcp, Sammlungen, Schwimmbad in deiner lib ?
Sie haben vollen stacktrace? Sie sollten den root Ausnahme.
Ich habe alle diese jar-Dateien in mein common/lib.Was muss ich sonst noch aprt aus den unten genannten. servlet-api.jar, naming-resources.jar, naming-factory-dbcp.jar, naming-factory.jar, jtds2.jar, jsp-api.jar ,jconn2.jar, jasper-runtime.jar, jasper-compiler-jdt.jar, jasper-compiler.jar, commons-el.jar.
Fehler org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot load JDBC driver class 'com.sybase.jdbc3.jdbc.SybDriver " ist alles, was ich bekomme, wenn ich die Ausführung der jsp-Seite.
Stellen Sie sicher, es ist com.sybase.jdbc3.jdbc.SybDriver in Ihrem jconn2.jar und nicht com.sybase.jdbc2.jdbc.SybDriver.

InformationsquelleAutor gautam vegeta | 2012-02-07

Schreibe einen Kommentar