lunes, 10 de septiembre de 2007

CONFIGURACIÓN DE DATASOURCE PARA TOMCAT 5.5 Y MYSQL 5.0.22

CONFIGURACIÓN DE DATASOURCE PARA TOMCAT 5.5 Y MYSQL 5.0.22


Paso 1 - Copiamos nuestro driver JDBC para mysql de extensión *.jar a la ruta $CATALINA_HOME/common/lib del tomcat en mi caso

el fichero es mysql-connector-java-5.0.5-bin.jar. Reiniciar tomcat.

Paso 2 - Si aun no lo hemos hecho, hay que crear en mysql un usuario con contraseña (sino tiene contraseña la conexión va a

fallar), una base de datos y un tabla con datos a la que acceder.

Paso 3- Configurar el web.xml de nuestra aplicación web.

<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xsi="http://www.w3.org/2001/XMLSchema-instance" schemalocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4">
<description>MySQL Test App</description>
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/TestDB</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>

Paso 3- Añadir nuestro código de conexión a la aplicación:

//Con DataSource
InitialContext ctx = new InitialContext();
DataSource ds = (DataSource) ctx.lookup("java:comp/env/jdbc/TestDB");
con = ds.getConnection();

DriverManager.setLogWriter(new PrintWriter(System.out, true));

if ( ds == null ) {
throw new Exception("Data source no encontrado!");
}

Paso 4 - Tras realizar el desplegado de la aplicación en tomcat nos vamos a la aplicación de administración de tomcat. Una vez autenticados nos vamos a la siguiente ruta del arbol:

Tomcat Server->Servicio Catalina->Host(Localhost)->Context(/nombreDeLaAplicacion)->Recursos->Fuentes de datos.

En esta ruta nos tiene que aparecer el nombre de nuestro datasource pues lo hemos puesto en el web.xml. Sin embargo no esta configurado (todos los campos menos el nombre estan vacios). Lo configuramos con los siguientes parametros.

<resource name="jdbc/TestDB" auth="Container" type="javax.sql.DataSource" maxactive="100" maxidle="30" maxwait="10000" username="javauser" password="javadude" driverclassname="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/javatest?autoReconnect=true"/>

Paso 5- Tras ello entramos en nuestra aplicación y la conexión con la bd tiene que realizarse correctamente.
Publicar un comentario