Glassfish - Keine passenden Treiber für mysql, wenn Sie versuchen, eine Verbindung mit der Datenquelle

Ich versuche, um dieses Lernprogramm abzuschließen:

https://netbeans.org/kb/docs/javaee/ecommerce/connect-db.html

Teil davon ist die Einrichtung einer Datenbank und versucht, eine Verbindung mit datasource und connection-pooling.

Ich Tat alles, was in dem tutorial, aber wenn ich versuche meinen code bekomme ich folgende Fehlermeldung:

javax.- servlet.jsp.JspException: keine Verbindung, DataSource ungültig: "java.sql.SQLException: No suitable driver found for jdbc/affablebean"

Hier ist der code, den es wirft:

<sql:query var = "result" dataSource = "jdbc/affablebean">
        SELECT * FROM category, product
        WHERE category.id = product.category_id
</sql:query>

Habe ich versucht eine Verbindung zur Datenbank herstellen ohne Verwendung von Verbindungs-pooling und datasource und es funktionierte wie ein Charme.

try {
        Class.forName("com.mysql.jdbc.Driver");
        System.out.println("Driver registered");
    } 
    catch (ClassNotFoundException ex) {
        Logger.getLogger(SqlService.class.getName()).log(Level.SEVERE, null, ex);
    }

Das bedeutet, dass die Treiber in der richtigen lib-Ordner in das glassfish-Verzeichnis, also muss das problem irgendwo anders sein.

Tutorial hat einen Abschnitt zur Problembehandlung, wo Sie beschreiben, dass, wenn ich bekommen diese Fehlermeldung "No suitable driver found for jdbc/affablebean" das bedeutet, dass ich nicht haben-Ressource-Referenz in meinem web.xml. Naja... ich HABE EINS und hier ist es:

<resource-ref>
    <description>Connects to database for AffableBean application</description>
    <res-ref-name>jdbc/affablebean</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
    <res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>

Habe ich versucht, dieses problem zu lösen, 16 Stunden pro Tag für mehr als zwei Tag, aber noch KEIN Glück.

Habt Ihr irgendeine Idee was falsch ist?
Ich blätterte alle die google und stackoverflow und fand ähnliche Probleme, aber die Lösung, die Sie geben, ist "Stellen Sie sicher, dass der mysql-Treiber in den richtigen Ordner auf dem server".

Warum ich eine Verbindung zu der Datenbank, ohne dass die dataSource-Objekt kann aber nicht verbinden?

  • Sie brauchen zu erstellen, die Datenquelle mit dem Namen jdbc/affabelbean von Netbeans.
  • Ich habe alles, was im tutorial beschrieben ist. Scheint, wie Sie nicht wissen, die Antwort auf meine Frage, also ich sehe nicht den Punkt zu kommentieren
  • Hast u fügen Sie die mysql-jdbc-Treiber in Ihrem Projekt die Bibliotheken??
  • Glassfish automatisch den Treiber bereitstellen. Ich habe nicht Sie manuell Hinzugefügt haben. Das merkwürdige ist, dass ich die Verbindung zu der Datenbank über die Klasse.Vorname
  • Ich habe das exakt gleiche problem in Glassfish4 aber die gleiche app, es funktioniert in GF3. So könnte es leicht kommen, dass es ein bug in GF4. Was app-server verwenden Sie?
  • Der link für das tutorial, hat mir geholfen. Ich wusste nicht, dass es notwendig ist, Neue hinzufügen -> Glassfish -> JDBC-Ressource zu Projekt.

InformationsquelleAutor Joro Seksa | 2013-06-29
Schreibe einen Kommentar