Integrar Apache-Tomcat+BIRT+SQLite

Instalar lo necesario

Partimos de un Ubuntu Server 11.04 limpio, instalamos apache tomcat y samba:

 #apt-get install tomcat6 tomcat6-admin samba samba-client smbfs smbclient

Configurar Apache-Tomcat

 Una vez instalado,apache tomcat, modificamos los xml para poder acceder a la aplicación de administración así como para crear los usuario.

Acceder a la aplicación de administración, nos vamos al directorio

# cd /etc/tomcat6/

escribimos: #nano context.xml

En la etiqueta “Context” escribimos path=”/manager” privileged=”true”

docBase=”/usr/local/tomcat6/server/manager”

 tiene que quedar así:

Ya hemos dado acceso a la aplicación de administración, ahora tenemos que crear el usuario para la administración.

Escribimos: #nano tomcat-users.xml

Quitamos las líneas que comentan el bloque de roles y usuarios, y agregamos dos líneas

la primera:

<role rolename=”manager”/>

 agregamos la segunda linea:

<user name=”mi_usuario” password=”mi_password” roles=”manager”/>

 en mi caso he creado un usuario llamado frlx, por lo tanto escribí:

<user name=”frlx” password=”frlx” roles=”manager”/>

tiene que quedar así:

Reiniciamos tomcat, escribimos:

# /etc/init.d/tomcat6 restart

 Ahora ya podremos acceder desde cualquier ordenador a la consola de administración, escribiendo la ip, y el puerto, en mi caso: 192.168.1.31:8080, ahora queda instalar BIRT

En la página que nos aparece por defecto, pinchamos sobre el link que dice “manager webapp”, nos pedirá el usuario y contraseña , escribimos la que hemos puesto anteriormente. Una vez logeados nos parecerá la consola de administración.

Una vez logeados nos parecerá la consola de administración.

Instalar BIRT

Nos descargamos de la página de eclipse el runtime de BIRT

Descomprimimos el fichero zip con el runtime de BIRT, dentro de esa carpeta descomprimida, vamos a encontrar un fichero llamado birt.war.

Nos vamos a la consola de administración de tomcat, en la sección “Archivo war a desplegar”.

Damos al botón “Examinar”, y seleccionamos el fichero birt.war, una vez seleccionado, damos al botón desplegar y listo.

Para comprobar que BIRT esta desplegado en tomcat, hacemos click sobre /birt, luego sobre “View Example”, y tendrá que ejecutarse un informe de ejemplo que viene por defecto.

Bien ahora ya tenemos, desplegado BIRT en nuestro servidor de aplicaciones. Ahora queda realizar un par de pasos necesarios para poder trabajar cómodamente.

Configurar para trabajar con SQLite

En el servidor.

Vamos a crear tres directorios compartidos visibles desde nuestra red, uno será para dejar la base de datos , otro para dejar los informes y otro para dejar cosas que necesitaremos compartir.

Escribimos:

# mkdir /home/mi_usuario/compartido

cambiamos los permisos

#chmod 777 /home/mi_usuario/compartido

 # mkdir /home/mi_usuario/dbSQLite

cambiamos los permisos

#chmod 777 /home/mi_usuario/dbSQLite

Ahora los compartimos, escribimos

# nano /etc/samba/smb.conf

Bajamos hasta el final y escribimos

 [Compartido]

comment = Carpeta para intercambio de ficheros

path = /home/mi_usuario/compartido public = yes writable = yes

[DB]

comment = Carpeta que contiene la BD

path = /home/mi_usuario/dbSQLite public = yes writable = yes

[Informes]

comment = Carpeta que contiene los informes

path = /var/lib/tomcat6/webapps

public = yes

writable = yes

Guardamos los cambios, y listo, ya tenemos nuestros directorios compartidos.

Aunque ya tenemos BIRT desplegado y funcionando, tenemos que hacer una cosa más,

en el directorio compartido “Compartido”, copiamos la carpeta “WebViewerExample”, del runtime de BIRT, ahora en nuestra consola escribimos:

#cd /home/mi_usuario/compartido/

#mv -r WebViewerExample Birt

#cp -r ./Birt /var/lib/tomcat6/webapps/

 Abrimos la consola de administración de tomcat, y paramos la aplicación web birt, aparecerá otra que se llamara Birt, que tendremos que desplegar, esa es la que nos servirá.

 Ahora nos queda permitir escribir en la carpeta compartida en dónde se dejarán los informes, escribimos en consola:

# chmod 777 /var/lib/tomcat6/webapps/Birt

reiniciamos tomcat

# /etc/init.d/tomcat6 restart

 Para comprobar que de verdad tenemos los directorios compartido abrimos firefox y escribimos:

smb://ip_servidor/

En mi caso escribí

smb://192.168.1.31/

el resultado tiene que ser algo así.

Ahora ya queda poco para terminar todo esto. Vamos a integrar los drivers de SQLite, para ello hacemos uso de la carpeta compartida que hemos llamado “Compartido”, nos descargamos los drivers de aquí , una vez descargados, presionamos la combinación alt+f2, y.

Escribimos smb://mi_servidor/compartido,

en mi caso escribí

smb://FRLXSERVER/compartido

copiamos el driver descargado en esa carpeta.

Ahora en nuestro servidor escribimos lo siguiente:

#cd /var/lib/tomcat6/webapps/Birt/WEB-INF/lib

una vez que estemos en ese directorio , escribimos.

 # cp /home/mi_usuario/compartido/sqlitejdbc-v056.jar ./

 hacemos un ls para ver si al final de la lista esta, esto sólo por despejar dudas.

Reiniciamos tomcat

# /etc/init.d/tomcat6 restart

 Ahora vamos a copiar la base de datos. Para ello pulsamos alt+f2, y escribimos:

smb://mi_servidor/DB, en mi caso

smb://FRLXSERVER/DB

en la ventana que se nos abrirá, copiamos nuestra base de datos SQLite.

Eso es todo, ahora cuando queramos subir un informe, hacemos lo siguiente.

alt+f2, escribimos

smb://mi_servidor/informes, en mi caso

smb://FRLXSERVER/informes

y en la ventana que se abre pegamos el fichero .rptdesign

 IMPORTANTE: antes de copiar el informe, tenemos que cambiar la url de la base de datos, como bien es sabido SQLite es una base de datos que no permite conexiones cliente, sólo permite conexiones locales, por lo que tenemos que cambiar lo siguiente:

<data-sources>

<oda-data-source extensionID=“org.eclipse.birt.report.data.oda.jdbc” name=“Data Source” id=“27″>

<text-property name=“displayName”></text-property>

<list-property name=“privateDriverProperties”>

<ex-property>

<name>contentBidiFormatStr</name>

<value>ILYNN</value>

</ex-property>

<ex-property>

<name>metadataBidiFormatStr</name>

<value>ILYNN</value>

</ex-property>

</list-property>

<property name=“odaDriverClass”>org.sqlite.JDBC</property>

<!–AQUI TENEMOS QUE DECIRLE DÓNDE SE ENCUENTRA NUESTRA BASE DE DATOS EN EL SERVIDOR–>

<!–EN NUESTRO CASO SERA jdbc:sqlite:/home/frlx/dbSQLite/ALMACEN.sqlite–>

<property name=“odaURL”>jdbc:sqlite:/home/mi_usuario/dbSQLite/mi_base_de_datos.sqlite</property>

</oda-data-source>

</data-sources>

Para ejecutarlo vamos a firefox y escribimos

http://192.168.1.31:8080/Birt/frameset?__report=mi_fichero.rptdesign

en mi caso tengo un informe que se llama testSqlite.rptdesign, entonces la url es

http://192.168.1.31:8080/Birt/frameset?__report=testSqlite.rptdesign

el resultado es este.

Acerca de frlx
Estudiante, programador.

Deja un comentario

Fill in your details below or click an icon to log in:

Logo de WordPress.com

You are commenting using your WordPress.com account. Log Out / Cambiar )

Twitter picture

You are commenting using your Twitter account. Log Out / Cambiar )

Facebook photo

You are commenting using your Facebook account. Log Out / Cambiar )

Connecting to %s

Seguir

Get every new post delivered to your Inbox.