sql >> Database teknologi >  >> RDS >> Mysql

Kan ikke oprette forbindelse til MySQL - Glassfish og Hibernate

Ser på følgende linje i stacktrace

du kan gætte hvad problemet kan være. Det første problem er databasedriverproblemet tror jeg. 1527 er standardportnummeret for derbydatabasen, som leveres med Glassfish-applikationsserveren.

Da du ikke har angivet nogen datakilde i din konfiguration, forsøger serveren at finde standarddatabasen, som er derby i dette tilfælde; men du kan ikke oprette forbindelse til den database, da du ikke har angivet nogen forbindelsesinformation for denne database.

Så du skal gøre følgende i din META-INF/persistence.xml :

  • Angiv transaction-type (i din konfiguration antages det at være JTA, fordi du implementerer din applikation på JEE-miljø pr. specifikation) som

    <persistence-unit name="unit" transaction-type="JTA">
    
  • Angiv jta-data-source element som underordnet persistence-unit

    <persistence-unit name="unit" transaction-type="JTA">
        ...
        <jta-data-source>your_data_source_name</jta-data-source>
        ...
    </persistence-unit>
    

For at ovenstående konfiguration skal fungere, skal du først konfigurere din applikationsserver (Glassfish). For at gøre det skal du downloade MySQL jdbc-driveren, pakke den ud og kopiere jar-filen til <glassfish_installation_directory>/glassfish/domains/domain1/lib (Jeg antager her Glassfish 3.1). Grunden til dette er, at Glassfish ikke sendes med MySQL-driver, så du skal selv gøre dette.

Start derefter Glassfish og åbn administrationskonsollen (http://localhost:4848 ). Åbn den venstre rude

  1. Resources/JDBC/JDBC Connection Pools og opret en ny forbindelsespulje
  2. Resources/JDBC/JDBC Resources og opret en ny datakilde. Det navn, du giver din datakilde, er det, du skal i din persistence.xml som nævnt ovenfor.


  1. uWSGI, Flask, sqlalchemy og postgres:SSL-fejl:dekryptering mislykkedes eller dårlig optagelse mac

  2. hvordan man samler 2 borde

  3. Hvordan slår man PostgreSQL VERBOSITY til i django db-forbindelse?

  4. Konverter kolonne med månedsnavn og år til heltal med formatet ÅÅÅÅMM i MySQL