JBoss

De Javi Sanromán wiki

Creando un Datasource a mysql

Creamos un mysql-ds.xml en server/default/deploy:

<?xml version="1.0" encoding="UTF-8"?>

<datasources>
	<local-tx-datasource>
		<jndi-name>jdbc/datasource_facturablock</jndi-name>
		<connection-url>jdbc:mysql://localhost:3306/facturablock</connection-url>
		<driver-class>com.mysql.jdbc.Driver</driver-class>
		<user-name>root</user-name>
		<password></password>
		<min-pool-size>1</min-pool-size>
		<max-pool-size>4</max-pool-size>
	</local-tx-datasource>
</datasources>

En nuestro web.xml añadimos:

  <resource-ref>
   <description>DB Connection</description>
     <res-ref-name>jdbc/datasource_facturablock</res-ref-name>
     <res-type>javax.sql.DataSource</res-type>
     <res-auth>Container</res-auth>
  </resource-ref>

Añadimos un fichero jboss-web.xml en nuestro WEB-INF:

<?xml version="1.0" encoding="UTF-8"?>
<jboss-web>  
   <resource-ref>  
		<res-ref-name>jdbc/datasource_facturablock</res-ref-name>   
			<jndi-name>java:jdbc/datasource_facturablock</jndi-name>   
			<res-type>javax.sql.DataSource</res-type>  
	</resource-ref>  
</jboss-web>

Creamos la conexión a este datasource:  String jndiName = "jdbc/datasource_facturablock";

if (jndiName != null && !jndiName.equals("")) {
   try {
      InitialContext initialContext = new InitialContext();
      System.out.println("Inicializando contexto");
      Context envContext = (Context) initialContext.lookup("java:/comp/env");
      dataSource = (DataSource) envContext.lookup(jndiName);
   }
   catch (NamingException namingException) {				
      namingException.printStackTrace();
   }
}