在JBoss AS7中配置PostgreSQL数据源
在AS7当中,引入了新的module的概念。因此,如果需要在AS7中添加对PostgreSQL的支持,需要做的是加入一个新的module。查看一下AS7的目录结构:
weli@power:~/projs/jboss-as-7.1.1.Final$ lsLICENSE.txt bundles jboss-modules.jarREADME.txt copyright.txt modulesappclient docs standalonebin domain welcome-content
mkdir -p org/postgresql/main
weli@power:~/projs/jboss-as-7.1.1.Final/modules/org/postgresql/main$ lspostgresql-9.1-903.jdbc4.jar
<module xmlns="urn:jboss:module:1.1" name="org.postgresql"> <!-- Load with jboss-cli command: /subsystem=datasources/jdbc-driver=postgresql-driver:add(driver-name=postgresql-driver, driver-class-name=org.postgresql.Driver, driver-module-name=org.postgresql) --> <resources> <resource-root path="postgresql-9.1-903.jdbc4.jar"/> </resources> <dependencies> <module name="javax.api"/> <module name="javax.transaction.api"/> </dependencies></module>
weli@power:~/projs/jboss-as-7.1.1.Final/modules/org/postgresql/main$ lsmodule.xmlpostgresql-9.1-903.jdbc4.jar
<datasources> <drivers> <driver name="h2" module="com.h2database.h2"> <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class> </driver> <driver name="postgresql-driver" module="org.postgresql"> <driver-class>org.postgresql.Driver</driver-class> </driver> </drivers> </datasources>
/subsystem=datasources/jdbc-driver=postgresql-driver:add(driver-name=postgresql-driver, driver-class-name=org.postgresql.Driver, driver-module-name=org.postgresql)
<datasource jndi-name="java:jboss/datasources/SOME_DB" pool-name="SOME_DB" enabled="true" use-java-context="true"> <connection-url>jdbc:postgresql:SOME_DB</connection-url> <driver>postgresql-driver</driver> <security> <user-name>XXX</user-name> <password>YYY</password> </security> </datasource>