Páginas

Mostrando entradas con la etiqueta JBoss. Mostrar todas las entradas
Mostrando entradas con la etiqueta JBoss. Mostrar todas las entradas

30/3/15

iReport con Oracle PL-SQL y Aplicación Java Web Primefaces. Parte 2.

iReport con Oracle PL-SQL y Aplicación Web.

Tutorial de Jaspersoft iReport 5.6.0 utilizando Oracle PL-SQL y ejecutando el Reporte desde aplicación Java web con Primefaces. Parte 2.




Jaspersoft iReport 5.6.0 utilizando Oracle PL-SQL y JavaYa que en la 1era parte del Tutorial creamos todo lo que tiene que ver con el Jaspersoft iReport y la parte de Oracle PL/SQL en esta 2da parte vamos a crear la aplicación en Java para ejecutar el reporte, como dije anteriormente al momento de compilar el reporte en el Jaspersoft iReport se crean dos archivos en el directorio que hemos elegido, uno con la extensión .jasper y otro con la extensión .jrxml, el que nosotros vamos a ejecutar es el .jasper ya que el otro sirve para que puedas modificarlo en directamente en el iReport, la aplicación que ejecute dicho archivo será web y la vamos a crear con el framework para JSF que se llama Primefaces, hace un tiempo ya hemos hecho un tutorial para crear una aplicación desde 0 con Primefaces obteniendo como resultado una página con un menú, este es el Tutorial, vamos a seguir con ese mismo ejemplo (puedes descargar el proyecto de ese tutorial desde aquí). Para no hacer tan larga esta estrada ya que la misma está centrada en la ejecución del reporte desde una aplicación Java web utilizando Primefaces, vamos a crear en el menú un nuevo ítem, en ese nuevo ítem vamos a ejecutar el reporte que creamos con iReport, así que vamos hacer unas modificaciones pequeñas en el proyecto para llevar a cabo la ejecución del reporte.
Ahora tenemos que crear nuestro managed bean que se encargara de hacer la lógica y mostrar nuestro reporte, primero crearemos un paquete llamado "beansDatoJava" y dentro del mismo crearemos el managed bean llamado "DatoJavaReporteBean" con un método que se llame ejecutarReportePDF el cual vamos a implementar más adelante.

iReport con Oracle PL-SQL y Aplicación Java Web Primefaces. Parte 1.

iReport con Oracle PL-SQL y Aplicación Web.

Tutorial de Jaspersoft iReport 5.6.0 utilizando Oracle PL-SQL y ejecutando el Reporte desde aplicación Java web con Primefaces. Parte 1.




Jaspersoft iReport 5.6.0 utilizando Oracle PL-SQL y JavaPara este Tutorial vamos a utilizar Jaspersoft iReport Designer v5.6.0, Oracle PL-SQL para la base de datos y obviamente Java para ejecutar nuestro reporte en formato PDF, dicho reporte lo vamos a ejecutar desde una aplicación web con Primefaces, vamos a explicar cómo funciona este asunto primero.
Jaspersoft iReport es un diseñador para JasperReports, como sabemos JasperReports es una librería escrita totalmente en Java con la cual podemos crear informes de diferentes tipos, puedes crear/construir un archivo y exportarlo, puedes exportar archivos en varios formatos como por ejemplo: excel, word, xml, pdf, etc. En este Tutorial nos vamos a centrar en la creación de un archivo en .pdf.
Por que deberías usar Jaspersoft iReport?? Primero si eres un programador Java te comento que está hecho 100% en código Java, es de fácil manejo, no tienes que instalar nada, solo se descarga y comienzas a usarlo, aparte de eso es poderoso y fácil de usar, posee múltiples funciones para agregar cuadros de texto, párrafos, separadores, imágenes, sub-reportes, tablas, etc, todo lo que puedas imaginar que lleva un informe en PDF con iReport puedes hacerlo y aparte de eso puedes hacer tu conexión a la base de datos con JDBC y hacerle consultas a la misma ya sea con sql o llamando a un Stored Procedure y los registros que retorne puedes mostrarlos en el reporte, ya quedaron atrás esas librerías en las que uno redactaba todo el contenido del informe dentro del mismo código Java.
Imagina que haces un reporte con esa librería utilitaria en código Java y quieras cambiar una pequeña parte del informe después que el sistema ya paso a producción, bueno tampoco es que es muy difícil, buscar de nuevo dentro del código la parte que quieres editar, hacer el cambio, las pruebas y después coordinar otro pase a producción, un poco fastidioso no?? En fin con iReport solo buscas el archivo que exportaste y lo editas directamente ahí sin tener que tocar tu código Java lo que es una mejor practica de programación.

30/12/14

JNDI datasource JUnit test JBoss.

JNDI datasource JUnit test.

JNDI datasource JUnit test JBoss.



Para poder utilizar JUnit en una clase en la cual hacemos una consulta a la base de datos y dicha consulta obtiene la conexión mediante JNDI con el datasource de JBoss 7 tenemos que enlazar ese datasource al InitialContext. Si vas a utilizar esto para hacer la clase "test" de JUnit tienes que hacer que el método donde se enlaza el datasource con el contexto inicial se ejecute primero con la anotación @BeforeClass. Aqui te dejo el codigo para eso:
@BeforeClass
 public static void setUpClass() throws Exception {
  try {
   System.setProperty(Context.INITIAL_CONTEXT_FACTORY,
     "org.apache.naming.java.javaURLContextFactory");
   System.setProperty(Context.URL_PKG_PREFIXES, "org.apache.naming");
   
   InitialContext initialContext = new InitialContext();
   initialContext.createSubcontext("java:jboss");
   initialContext.createSubcontext("java:jboss/datasources");
   // Reemplaza en nombre del datasource por el tuyo
   initialContext
     .createSubcontext("java:jboss/datasources/DataSourceDatoJava");

   OracleConnectionPoolDataSource poolDataSource = new OracleConnectionPoolDataSource();
   poolDataSource.setURL("jdbc:oracle:thin:@localhost:1521:");
   poolDataSource.setUser("datojava");// Tu usuario
   poolDataSource.setPassword("datojava"); // Tu contraseña

   initialContext.rebind("java:jboss/datasources/DataSourceDatoJava",
     poolDataSource);
  } catch (NamingException ex) {
   ex.printStackTrace();
  }
 }
 
Ya con este dato java podemos ejecutar nuestra clase test de JUnit.


Temas Relacionados:

29/12/14

ERROR. More than the maximum number of request parameters (get plus post)

ERROR. More than the maximum number of request parameters (get plus post) for a single request (512) were detected.

ERROR. More than the maximum number of request parameters (get plus post) for a single request (512) were detected.



ERROR. more than the maximum number of request parameters (get plus post) for a single request (512) were detected, este error se produce cuando estamos mandando en una aplicación web mas parámetros de los permitidos por default en JBoss, la solución a ese error es poner en el archivo de configuración del JBoss un parámetro llamado org.apache.tomcat.util.http.Parameters.MAX_COUNT, le vamos a poner de valor "2000" y así evitamos que se reproduzca de nuevo este error, tranquilos que esto no afecta el comportamiento de la aplicación no desesperes y soluciona ese pequeño bug, es bueno que al crear tu súper aplicación ya le pongas esta propiedad y evites posibles futuros errores, para solucionarlo vamos al archivo de configuración de nuestro JBoss que se encuentra en la siguiente ruta: tuJBoss>standalone>configuration>standalone.xml y vamos agregar esta propiedad justo después que termina la etiqueta "<extensions>"
</extensions> 
 

    

 

Con este dato java ya debería funcionar nuestro aplicativo, si te dice que 2000 es muy poco le pones mas. Depende de la aplicación.


Temas Relacionados:

27/12/14

JNDI Datasource Java JBoss. JDBC Tip.

Datasource (fuente de datos) en Java. JNDI JDBC Tip.

JNDI Datasource Java JBoss. JDBC Tip.



Una buena práctica de programación cuando estamos haciendo una aplicación web en Java es utilizar la api JNDI (Java Naming and Directory Interface), que es una API de java que nos permite buscar objetos mediante un nombre, eso quiere decir que podemos crear una fuente de datos (Datasource) en el cual vamos a declarar todo lo referente a nuestra conexión a la base de datos que vamos a utilizar, y mediante la API JNDI obtenemos la conexión para hacer nuestras consultas. Ok por si no te queda claro ahora te lo explico de otra manera con un breve ejemplo, estás en tu desarrollo de la aplicación web Java que corre en el servidor de aplicaciones JBoss, bueno ahora cuando quieres hacer una consulta a la base de datos primero tienes que conectarte a la misma mediante JDBC , obvio que si utilizamos este ejemplo en una aplicación web funcionara pero no es una buena práctica de programación ya que la aplicación web no se hace portable y aparte de eso si queremos hacer un cambio de un puerto, ip o el nombre del driver hay que hacerlo modificando el código, cuando sería una mejor practica hacerlo mediante JNDI y así cualquier cambio no implica hacer una modificación de código, aparte de eso todas las aplicaciones que corren en el mismo servidor de aplicaciones pueden utilizar el Datasource para conectarse a la base de datos. Imagina hacer una clase de conexión para cada aplicación que desarrollas y todas corren en el mismo servidor de aplicaciones, mejor práctica es hacerlo una sola vez y reutilizarlo en todas las aplicaciones que desarrollas.

17/12/14

Pruebas unitarias JUnit en Eclipse/JBoss Developer Studio. JUnit tutorial.

Test JUnit en Eclipse/JBoss Developer Studio. JUnit tutorial.

Pruebas unitarias JUnit en Eclipse/JBoss Developer Studio. JUnit tutorial.



JUnit Matchers Hamcrest Tutorial. Te presento el poderoso JUnit, para refrescarte un poco la mente te doy un breve concepto del mismo, JUnit es un framework que sirve para hacer pruebas unitarias de nuestras clases, te darás cuenta de que cuando estás haciendo un proyecto, para probar un método de una determinada clase tienes que llamarlo desde el aplicativo o desde otro método y después ver si el resultado que devuelve es el esperado, bueno aquí nace JUnit el cual nos ayuda a ahorrar muchísimo tiempo al implementar una "clase prueba" para nuestras pruebas unitarias. Dicho esto te comento que este pequeño tutorial está hecho con JUnit 4 y el JBoss Developer Studio que básicamente es lo mismo que eclipse, no te asustes si estas utilizando otro IDE, en casi todos los IDE's se trabaja de la misma manera y con este tuto podrías fácilmente aprender a utilizarlo en tu IDE, no tienes que instalar nada nuevo casi todas las últimas versiones de los IDE's traen el plugin de JUnit listo para usar. Comenzando desde 0 te pondre varios ejemplos, algunos nos daran problemas y otros no.

11/12/14

Dos JBoss en la misma maquina. JBoss de prueba.

Tener dos JBoss en la misma máquina. Un JBoss aparte para pruebas.

Tener dos JBoss en la misma máquina. Un JBoss aparte para pruebas.



Cuando llegas a un nuevo trabajo ya tienen en tu maquina instalado todas las herramientas necesarias para que programes, los IDE'S que utilizan, las bases de datos, los gestores, etc. Cada vez que tienes un requerimiento al finalizar tienes que subirlo al control de versiones. Ahora en mi caso cuando no tengo ningún requerimiento o me sobra el tiempo hago algunas pruebas de algo que me interese en un proyecto aparte, o de repente cambio en archivo de configuración del JBoss standalone.xml o cualquier otra cosa que la prueba implique. Bueno al momento de hacer el commit al control de versiones a veces se nos pasa por alto que hicimos un cambio en dichos archivos y nos damos cuenta cuando nos mandan ese correo con varias observaciones y errores que tienen que ver con ese cambio, por eso hay que verificar antes de hacer commit que cambios son los que vas a subir con mucho cuidado. Después de esos errores me pregunte cómo hacer para instalar dos servidores de aplicaciones en la misma máquina o pc, en este caso 2 JBoss en la misma máquina. Cuál es el propósito de esto, que ya que obviamente esos proyectos del trabajo, y los proyectos de pruebas están en distintos Workspaces instalar un JBoss para ese WorkSpace de pruebas y dejar el del trabajo como esta para evitar posibles errores por descuido.

29/10/14

Primera aplicacion con Primefaces 5.0, JSF 2.1, JBoss Developer Studio o Eclipse y JBoss 7

Tutorial Primefaces 5.0, JSF 2.1, JBoss 7
Primefaces Dato Java

Primera aplicación en Java con JSF 2.1, Primefaces 5.0, JBoss Developer Studio y JBoss 7 Tutorial.

Primefaces es una Liberia de componentes potentes para JSF, tiene componentes interesantes y fáciles de usar, lo mejor de todo es que no tienes que configurar prácticamente nada para poderla usar, nada de dependencias ni nada de eso, solo importar el .jar a tu proyecto hacer unos cuantos ajustes y listo. Este tutorial es para crear nuestra primera aplicación con esta librería. Por ahora solo mostraremos un menú y un texto de salida para probar que la aplicación funciona. Recuerda que al final del tutorial esta el proyecto completo para que lo descargues si tienes alguna duda. Primero creamos el proyecto en la opción

4/8/14

Tutorial Java, JSF y Adf

Tutorial Java, JSF y Adf Para Principiantes.

ADF Java. Primera Aplicación Utilizando el Framework ADF Core





ADF Java tutorial desde 0. En esta oportunidad haremos un tutorial de Java con el framework ADF para principiantes, esto quiere decir que será algo fácil con lo necesario, no voy a comenzar desde el nivel más bajo sino que te voy a enseñar a crear una aplicación con su respectivo filtro de seguridad, logs, beans, dto, etc. En esta primera parte te voy a dar uno que otro concepto pero iremos más a la práctica que es donde verdaderamente se aprende. Bueno primero que todo ADF (Application Development Framework) es el framework de Oracle para las aplicaciones empresariales de Java, está basado en el framework JSF. Para aprender ADF ya deberías saber JSF por lo menos lo mínimo.

28/5/14

Configurar archivos .log en JBoss ON Server

Configurar logs en JBoss ON Server

Logs en JBoss ON Server



En el jon server se pueden configurar archivos .log para poder verlos en la línea de tiempo, te preguntaras para que me sirve ver estos logs?? Bueno si tú eres el administrador de aplicaciones y estas monitorizando todo en el jon server quieres ver esos eventos de logs, aparte de poder verlos puedes crear alertas para que cuando por ejemplo cierto evento de log suceda sea lanzada y asi poder resolver el problema a la brevedad posible.

Para configurar los archivos .log del JBoss EAP/AS7 navegas hasta la pestaña principal Inventory>All Resources> seleccionas el agente y en sus recursos buscas el EAP/AS7.

Crear alertas, JBoss ON Server,

Crear una alerta en el JBoss ON Server

Alertas en JBoss ON Server



Una alerta en el jon server es como una alarma que es lanzada cuando ocurre cierta condición en un recurso, que pasa cuando el administrador de una aplicación no está pendiente del rendimiento del servidor en el que la aplicación está corriendo y se da cuenta de que algo está mal cuando la aplicación no responde? Qué pasa si el administrador de la aplicación esta monitoreando los recursos bien pero justamente en su hora de almuerzo pasa algo y él ni sabe? Bueno la respuesta para este tipo de eventos es crear una alerta en el jon server si sabes que cuando un recurso sale de su comportamiento habitual afecta al servidor de aplicaciones o simplemente porque quieres saber.

26/5/14

JBoss ON Mediciones/Métricas

Mediciones/Métricas en JBoss ON Server

Mediciones/Métricas JBoss ON Server



Ahora te muestro los tipos de mediciones que puedes encontrar en el jon server, primero recordándote que el jon server trabaja mediante horarios, esos horarios de actualización se pueden cambiar. El primer grafico de medición lo puedes encontrar desde la GUI vas a la pestaña Inventory>Resources>Platforms> y seleccionas el agente
Resources
Resources

Después de seleccionar el agente te darás cuenta de que te salen todos los recursos del agente pero como por ahora las mediciones de los recursos que queremos ver son del recurso seleccionado, presionamos la pestaña Summary la cual posee dos sub-pestañas.

22/5/14

Para que sirve el JBoss ON Server.

JBoss ON Server, jon server

JBoss On Server, Jon Server



JUnit Assume Tutorial. El JBoss Operations Network (JBoss On Server o Jon Server), es una herramienta para monitorear las aplicaciones que tengamos en nuestro JBoss Server (EAP/AS7), es una herramienta potente en la cual podemos ver gráficos de mediciones de todos los recursos de un PC o servidor. Ahora la pregunta es: como hago eso??? Bueno para hacerte más claro el asunto este jon server se comunica con uno o varios jon agent, los jon agent (agente) son parte de esta herramienta y se instalan en la maquina en donde se encuentra nuestro JBoss Server (EAP/AS7), este agente después de estar instalado en la maquina se comunica con el jon server y le envía datos acerca de todos los recursos de la maquina, esto quiere decir, de los procesadores que tiene, la red, la memoria libre de ram, el espacio en disco... De todos sus recursos!! Si ya se sabe que a los administradores de aplicaciones les gusta esto... Bueno siguiendo con el tema este agente está instalado en la maquina en donde se encuentra nuestro EAP/AS7 envía información a el jon server y la misma se va almacenando en una base de datos. De donde sale esa base de datos?? Cuando se instala el jon server tienes dos opciones en la configuración, o crear una base de datos en Oracle o Postgresql, este jon server se puede instalar en una maquina normal o servidor sea linux o windows...


Imaginemos el caso de que nuestro servidor en donde se encuentran nuestra aplicaciones tiene un volumen alto de transacciones y la memoria ram del mismo siempre se consume en las horas pico y nuestro JBoss no responde y el administrador de las aplicaciones no se da cuenta hasta que lo llaman de la gerencia para informarle que las aplicaciones no responden, que problema, como el administrador no sabe en realidad que sucedió puede que lo boten, segurísimo! Para manejar este tipo de casos el jon server cae como anillo al dedo. El jon server posee un historial de mediciones en el cual se puede observar cómo se comportan los recursos de la maquina en donde están corriendo nuestras aplicaciones, así el administrador de aplicaciones puede saber cuáles recursos hay que mejorar debido a la cantidad de transacciones que se realizan en nuestras aplicaciones.

El jon server tiene características importantes, se pueden crear alertas que se disparen si se cumplen las condiciones que pongamos, supongamos que tenemos el problema de memoria antes expuesto, podemos crear una alerta que cuando la memoria ram usada sobrepase los 5GB envié una alerta al administrador del jon server o por correo electrónico, o podemos configurar que cuando eso pase apaguemos el EAP/AS7 y lo volvamos a encender, interesante no?? Ya sé que a los administradores les gusta esto.
Nota: el jon server trabaja bajo horarios, no es en tiempo real, posee graficos en tiempo real pero de resto es bajo horarios.

Este fue unos de los primeros dato java, en los próximos post hablare un poco más acerca del jon server. Nos vemos :)..


Temas Relacionados: