Hola. Resulta que estoy migrando una aplicación que tenía en mi
trabajo, a mi pc de casa. El caso es que no me funciona correctamente la configuración que tengo en el server.xml, y me he vuelto loco a probar cosas y no he conseguido nada.
El error que me da es el siguiente:
“javax.naming.NameNotFoundException: el nombre java:comp/env no este
asociado a este contexto en el método getConnection"
Yo pienso que tengo bien configurado el context y no logro ver donde tengo el error, aquí envío una copia del context:
<Context path="/inmobinet" docBase="/inmobinet/codigo/" debug="0" reloadable="true">
<Resource name="jdbc/inmobinet" auth="Container" scope="Shareable" type="javax.sql.DataSource"></Resource>
<ResourceParams name="jdbc/inmobinet">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFact ory</value>
</parameter>
<parameter>
<name>username</name>
<value>root</value>
</parameter>
<parameter>
<name>password</name>
<value></value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>org.gjt.mm.mysql.Driver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:mysql://localhost:3306/inmobinet?autoReconnect=true</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>8</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>4</value>
</parameter>
</ResourceParams>
</Context>
En el código las instrucciones que tengo son:
javax.naming.Context initCtx = new javax.naming.InitialContext();
javax.naming.Context envCtx = (javax.naming.Context) initCtx.lookup("java:comp/env");
javax.sql.DataSource ds = (javax.sql.DataSource) envCtx.lookup("jdbc/inmobinet");
Yo opino que está todo correcto, pero no logro hacer que me
funcione. Tengo otras aplicaciones con Struts instaladas y me van bien, pero a esta no se que le pasa.
Por si sirve de ayuda, el usuario de la BD es root y el password es
vacío, y el nombre de la BD es inmobinet. Tengo instalado el Tomcat 4.1.30.
Si alguien me pudiera hechar una mano, ya no se que probar.