(Nota che questo è stato scritto per JBoss AS 7.1.1; tienilo a mente se su una versione più recente, poiché le cose potrebbero essere cambiate.)
Scarica PgJDBC
. Presumo tu stia usando postgresql-9.1-902.jdbc4.jar , la versione corrente al momento della scrittura. Modifica i nomi dei file in modo che corrispondano se hai bisogno di una versione diversa.
Ora distribuisci il driver JDBC su JBoss AS 7 inserendolo in deployments cartella o utilizzando il deploy comando in jboss-cli . Funzionerà per la maggior parte, ma non per tutti, gli scopi.
In alternativa, puoi definire un modulo driver JDBC PostgreSQL:
- Crea il percorso
$JBOSS_HOME/modules/org/postgresql/main. Imodules/orgparte dovrebbe già esistere, crea directory per il resto. -
In
$JBOSS_HOME/modules/org/postgresql/main/module.xmlcon il seguente contenuto, modificando laresource-rootvoce per il driver PgJDBC per fare riferimento al driver che si desidera utilizzare.<?xml version="1.0" encoding="UTF-8"?> <module xmlns="urn:jboss:module:1.1" name="org.postgresql"> <resources> <resource-root path="postgresql-9.1-902.jdbc4.jar"/> </resources> <dependencies> <module name="javax.api"/> <module name="javax.transaction.api"/> <module name="javax.servlet.api" optional="true"/> </dependencies> </module> - Nella stessa directory di
module.xmlposizionapostgresql-9.1-902.jdbc4.jar - Avvia JBoss AS
- Apri
jboss-clieseguendo$JBOSS_HOME/bin/jboss-cli --connect -
Esegui il comando:
/subsystem=datasources/jdbc-driver=postgresql-driver:add(driver-name=postgresql-driver, driver-class-name=org.postgresql.Driver, driver-module-name=org.postgresql) - Ora crea tutte le origini dati richieste, ecc., utilizzando
postgresql-drivercome nome del driver.
Puoi creare un'origine dati tramite l'interfaccia utente web, con jboss-cli con data-source create comando (vedi data-source --help , data-source add --help ), o distribuendo un -ds.xml file come questo:
<?xml version="1.0" encoding="UTF-8"?>
<datasources>
<datasource jndi-name="java:/datasources/some-ds" enabled="true" use-java-context="true"
pool-name="some-ds-pool">
<connection-url>jdbc:postgresql:dbname</connection-url>
<driver>postgresql-driver</driver>
<security>
<user-name>username</user-name>
<password>password</password>
</security>
</datasource>
</datasources>