(Tenga en cuenta que esto se escribió para JBoss AS 7.1.1; téngalo en cuenta si tiene una versión más nueva, ya que las cosas podrían haber cambiado).
Descargar PgJDBC
. Supongo que estás usando postgresql-9.1-902.jdbc4.jar , la versión actual en el momento de escribir este artículo. Ajuste los nombres de archivo para que coincidan si necesita una versión diferente.
Ahora implemente el controlador JDBC en JBoss AS 7 colocándolo en deployments carpeta o usando deploy comando en jboss-cli . Esto funcionará para la mayoría de los propósitos, pero no para todos.
Alternativamente, puede definir un módulo de controlador JDBC de PostgreSQL:
- Cree la ruta
$JBOSS_HOME/modules/org/postgresql/main. Losmodules/orgparte ya debería existir, cree directorios para el resto. -
En
$JBOSS_HOME/modules/org/postgresql/main/module.xmlcon el siguiente contenido, cambiando elresource-rootentrada para el controlador PgJDBC para hacer referencia al controlador que desea utilizar.<?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> - En el mismo directorio que
module.xmlcoloquepostgresql-9.1-902.jdbc4.jar - Iniciar JBoss AS
- Abrir
jboss-cliejecutando$JBOSS_HOME/bin/jboss-cli --connect -
Ejecute el comando:
/subsystem=datasources/jdbc-driver=postgresql-driver:add(driver-name=postgresql-driver, driver-class-name=org.postgresql.Driver, driver-module-name=org.postgresql) - Ahora cree las fuentes de datos requeridas, etc., usando
postgresql-drivercomo el nombre del controlador.
Puede crear una fuente de datos a través de la interfaz de usuario web, con jboss-cli con data-source create comando (ver data-source --help , data-source add --help ), o implementando un -ds.xml archivo como este:
<?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>