En ésta publicación explico el procedimiento para configurar una conexión
JNDI (Java Naming and Directory Interface) en
Pentaho Server v5.x a v8.x hacia un servidor de base de datos
PostgreSQL.
1. Ir al directorio
tomcat/conf y editar el archivo
context.xml
2. Dentro de la etiqueta
<Context> colocar lo siguiente:
<Resource name="jdbc/dwh_bus"
auth="Container" type="javax.sql.DataSource"
factory="org.apache.commons.dbcp.BasicDataSourceFactory"
maxActive="20"
maxIdle="5"
maxWait="10000"
username="postgres"
password="postgres"
driverClassName="org.postgresql.Driver"
url="jdbc:postgresql://127.0.0.1:5432/dwh_bus"/>
NOTA: el nombre
jdbc/dwh_bus es muy importante
y es sensible a mayúsculas y minúsculas. Es importante recordarlo para configurarlo en las herramientas de BI de Pentaho que se usen. El atributo
driverClassName hace referencia al driver JDBC de PostgreSQL y el atributo
url a la cadena de conexión hacia el Data Warehouse.
3. Ir al directorio
/tomcat/webapps/pentaho/WEB-INF y editar el archivo
web.xml
4. Ubicar el comentario
<!-- insert additional resource-refs --> y colocar la referencia al recurso
JNDI creado en el paso 2.
<!-- insert additional resource-refs -->
<resource-ref>
<description>Conexion al DWH_BUS</description>
<res-ref-name>jdbc/dwh_bus</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
5. Iniciar Pentaho Server y acceder a PUC como
Administrador
6. Ir a la perspectiva
Home > Manage Data Sources > New Connection en
JNDI Name colocar
dwh_bus como se muestra a continuación: