Configurare risorse JDBC su Glassfish

In questo articolo vado a spiegare brevemente come configurare una risorsa JDBC su Glassfish, per permettere ad una web application di interagire con un database (es. Mysql). La procedura che seguirò è esattamente la stessa sia sulla versione 3.0.1 che sulla 3.1.1 di Glassfish.

Possiamo configurare la nostra risorsa usando interamente l’interfaccia web di amministrazione di Glassfish, che di default è raggiungibile alla porta 4848.

interfaccia di amministrazione Glassfish

Creazione del Connection Pool

Nel menù di sinistra apriamo il collagamento Risorse e quindi JDBC. Clicchiamo su Connection Pools.

Cliccare su Connection Pools

Clicchiamo su New per creare una nuova connection pool. Inseriamo un nome univoco per il pool; selezioniamo javax.sql.DataSource come resource type e MySql come database vendor (o altro, a seconda del database utilizzato). Quindi clicchiamo su Next.

Impostazione connection pool: step 1

Nel secondo step possiamo personalizzare le impostazioni. La prima parte del form (Pool Settings) ci permette essenzialmente di regolare la dimensione del pool, la seconda parte invece (Transaction) di scegliere il tipo di connessioni (transactional o non transactional). Per il momento possiamo lasciare le scelte di default.

Impostazioni connection pool: step 2

Dobbiamo invece agire sulla terza parte del modulo (Additional Properties), impostando i dati per la connessione al database. Dobbiamo inserire:

  • URL: la url per la connessione al database.                                                  Es. jdbc:mysql://localhost:3306/test_db
  • User: l’utente che ha i permessi di agire sul database. Es. test_user
  • Password: la password dell’utente inserito. Es. test_password
  • driverClass: la classe del driver per la connessione al database scelto. Es. com.mysql.jdbc.Driver nel caso di MySql

Se di default troviamo altre proprietà preimpostate, dobbiamo fare attenzione al fatto che non siano presenti proprietà ripetute; questo può succedere nel caso che compaiano proprietà con nome diverso ma solo nel case, ad esempio “Url” e “URL”: in questo caso potrebbe essere preso un valore diverso da quello che abbiamo impostato. A questo punto clicchiamo su Finish: abbiamo terminato la creazione del pool.

Creazione della risorsa JDBC

Passiamo quindi alla creazione della risorsa vera e propria cliccando su JDBC Resources nel menù laterale e quindi su New. Sarà sufficiente inserire un nome univoco per la risorsa e scegliere dal menù a tendina il pool appena creato. Clicchiamo infine su OK.

Creazione della risorsa jdbc

A questo punto siamo in grado di utilizzare questa risorsa per collegare la nostra applicazione con il database. Ad esempio, se usiamo JPA, possiamo inserire la risorsa creata nel file persistence.xml che definisce la nostra persistence unit.

<?xml version="1.0" encoding="UTF-8"?>
 <persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
 <persistence-unit name="TestPU" transaction-type="JTA">
 <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
 <jta-data-source>jdbc/test</jta-data-source>
 <exclude-unlisted-classes>true</exclude-unlisted-classes>
 </persistence-unit>
</persistence>

Autore: Evelina Agostini

Evelina Agostini si è laureata con lode in Ingegneria Informatica presso l'Università degli Studi di Firenze e può vantare un'esperienza decennale nello sviluppo di soluzioni web. Dotata di competenze trasversali a tutto lo stack, conosce in maniera approfondita la piattaforma Java EE ed in generale le tecnologie server side sia Java che PHP, ed è in grado di progettare e realizzare database scalabili utilizzando sia MySQL che Oracle. Evelina possiede inoltre competenze su Javascript e jQuery e skill internazionalmente riconosciuti per quanto riguarda il framework AngularJS ed in generale le soluzioni Javascript MVC. Evelina, grazie alle sue doti creative, si occupa anche del design di alcune delle interfacce dei sistemi sviluppati da ELbuild.

2 pensieri riguardo “Configurare risorse JDBC su Glassfish”

  1. I did the same curtigonafion as you mention above. But I dont know why when I ping I get the error ORA-00604: error occurred at recursive SQL level 1 ORA-12705: Cannot access NLS data files or invalid environment specified Enviroment isOracle Database 10g Express Edition Release 10.2.0.1.0 ProductPL/SQL Release 10.2.0.1.0 ProductionCORE 10.2.0.1.0 ProductionTNS for 32-bit Windows: Version 10.2.0.1.0 ProductionNLSRTL Version 10.2.0.1.0 ProductionWin Xp Sp3And The Locale is tr_TR. thanks

    1. Have you checked your oracle configuration? Are you able to connect to the db through command line or others tools?
      Also consider that if you use Oracle you need a different driver than the one I used for Mysql.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *