domingo, 26 de junio de 2011

Semana 3_1

Contenidos:

  • Reportes.
  • Conexion clasica.
  • Pool de conexiones con glassfish.
  • Pool de conexiones con tomcat.

Reportes, Conexion clasica y pool de conexiones.


En la semana 2, hemos visto la forma de crear reportes a travez de jasperReports e iReports.
Como pudieron observar, se generaba un error a la hora de mostrar el reporte despues de haber seguido todos los pasos de la guia.

Conexion clasica.


La forma de solucionar el problema es cambiando las siguientes lines de codigo:

Las lineas 49, 50 y 51, son parte de la guia original, lo que se hace en esas 3 lineas de codigo es llamar al pool de conexiones que es creado con antelacion, dicho paso esta omitido en la guia y mas adelante se explica como crear dicho pool de conexiones.
Las lineas 53 y 55 son las que se ha agregado para poder visualizar los resultados del reporte de forma exitosa. El error se genera, porque como en la guia original pide mandar a llamar al pool de conexiones, y como no existe dicho pool, el dataset esta vacio. Mientras que cuando creamos nostros mismo la conexion singular, ahi si se llena el dataset que esta explicito en las lineas de codigo que aparecen mas abajo.
La solucion propuesta es ineficiente, por lo tanto hay que crear el pool de conexiones y conectarse de esa manera.

Crear pool de conexiones con glassfish.

Cambiar de server.
Si comenzaste el proyecto con el servidor tomcat, y quieres utilizar el servidor glassfish, seguir estos pasos:
1. Clic derecho sobre la carpeta del proyecto, luego, clic en propiedades.
2. En la pantalla que aparece, Clic en Run.
3. En el item Server, cambiamos el de tomcat por el server Glassfish, luego clic en Ok.

Creación de la conexión a una base de datos.
1. Seleccionar la pestaña de “Service”.
2. Click derecho sobre “Database”, seleccionar “New Connection...”.
3. Llenar los siguientes campos tal y como se muestran en la siguiente figura.
NOTA:
driver name: el conector mysql
host: localhost
port: 3306
database: zoologico
username: root
password: ""


Creando el Pool de Conexiones
Para realizarlo desde NetBeans, necesitamos tener el proyecto que usará la base de datos abierto.
Luego, presionamos Ctrl+N (File > New File)

1. Seleccionamos la categoría Glassfish y el tipo de archivo JDBC Connection Pool Clic en Next.
2. Escribimos el nombre de nuestro pool de conexiones y seleccionamos el conector de la base de datos.
NOTA:
JDBC Connection pool name: myConectionPool
En la siguiente ventana nos aparece Datasource Classname con un nombre bastante largo, este esta determinado por la conexión seleccionada anteriormente, nosotros lo vamos a dejar por defecto, le vamos a poner una descripción, en la tabla de propiedades podemos revisar los datos de ingreso a la base, para comprobar que estén correctos y terminamos dándole un clic en Next. (Si deseamos modificar las propiedades por defecto de la conexión, nosotros podemos cambiarlas luego editando el archivo sun-resources.xml, que se encuentra en la carpeta Server Resources de nuestro proyecto).
Clic en Finish
Listo, ya tenemos nuestro pool de conexiones creado para nuestro proyecto desde NetBeans
Creando el recurso JDBC
1. Presionamos Ctrl+N (File > New File), seleccionamos la categoría Glassfish y el tipo de archivo JDBC Resource Clic en Next.
2. Seleccionamos el pool de conexiones que estará asociado a nuestro recurso JDBC. En mi caso es myConectionPool, y escribo el nombre en formato JNDI de nuestro recurso jdbc.
NOTA:
Use existing JDBC connection pool: myConectionPool

Clic en Finish
Listo, nada más. Ya tenemos nuestro recurso JDBC.
Referencia del DataSource desde la aplicación:
1. Abrimos el archivo web.xml en la carpeta Web Pages –> WEB-INF.
Si el archivo no esta creado seguir estos pasos:
Clic en file > new file, Selecciona el item web, luego seleccionar Standard Depolyment Descriptor (web.xml).
1. Abrimos el archivo web.xml de la carpeta WEB-INF.
2. Con lo que obtendremos un asistente gráfico, en este pulsamos la pestaña Referencias y luego el botón añadir:
3. Agregamos el siguiente nombre de recurso, correspondiente al datasource creado antes:
Resource Name: jdbc/myDatasource:
Obteniendo el siguiente resultado.


LLENAR EL DATASOURCE ATRAVEZ DEL POOL DE CONEXIONES.


Agregamos las lineas 48, 49 y 50, asegurandonos de la linea 50; la linea 50 debe de llevar el nombre del recurso. En este ejemplo, el nombre es JDBC/myDatasource.
Corra la aplicacion.

Pool de conexiones con tomcat.

Revisen esta entrada por si ya tienen instalado en netbeans 7.0 sin el apache tomcat 7.0 y se lo desean agregar; en la entrada parecen otras versiones, pero el proceso es el mismo.

Para el mismo ejemplo.
1. Crean la aplicacion con tomcat como servidor o se cambian de servidor (Se explica arriba).
2. Buscamos el Context.xml (Web Pages > META-INF) y lo modificamos a modo de que quede como se muestra a continuacion:
3. Buscamos o creamos (Se explico mas arriba) el web.xml, y escribimos lo siguiente como se ve en la figura:
Luego debemos llenar el datasource atravez del pool de conexiones, es lo mismo que se explico en el apartado LLENAR EL DATASOURCE ATRAVEZ DEL POOL DE CONEXIONES.
FIN.






No hay comentarios:

Publicar un comentario