JasperReports for lists on appfuse 1.8.2
From Wickle Wiki
Intentaremos integrar Jasperreports 1.1.0 dentro de Appfuse para generar listados en formato HTML (usando displaytag) y generar los mismos listados en PDF (usando Jasperreports)
Por que
La exportacion a PDF que trae el displaytag es bastante basica y no nos vale para generar reports complicados como los que vamos a hacer con el jasperreports , ademas nos está dando algun problema con el Weblogic 7.
Pasos a seguir
Primero vamos a meter las clases necesarias en los directorios adecuados ... POI: Son APIS de acceso a formatos propetarios de Microsoft, aunque en principio solo usaremos PDF , podriamos querer exportar a excel. iText: Conjunto de APIs para transformaciones a PDF al vuelo. jasperreports: Conjkunto de librerias para el manejor de los reports.
Estas clases (poi.jar,itext.jar y jasperreports.jar) las meteremos en el directorio lib, y modificamos el lib.properties para que se entere de que existen:
#
# JasperReports - http://jasperreports.sourceforge.net/
#
jasperreports.version=1.1.0
jasperreports.dir=${lib.dir}/jasper-reports-${jasperreports.version}
jasperreports.jar=${jasperreports.dir}/jasperreports-${jasperreports.version}.jar
jdt.jar=${jasperreports.dir}/jdt-compiler.jar
#
# Poi - http://jakarta.apache.org/poi/index.html
#
poi.version=2.5.1
poi.dir=${lib.dir}/poi-${poi.version}
poi.jar=${poi.dir}/poi-${poi.version}.jar
# Itext - http://www.lowagie.com/iText/
#
itext.version=1.3
itext.dir=${lib.dir}/itext-${itext.version}
itext.jar=${itext.dir}/itext-${itext.version}.jar
properties.xml
<path id="service.compile.classpath">
...
<fileset dir="${jasperreports.dir}" includes="*.jar"/>
<fileset dir="${poi.dir}" includes="*.jar"/>
<fileset dir="${itext.dir}" includes="*.jar"/>
<path id="web.compile.classpath">
<fileset dir="${jasperreports.dir}" includes="*.jar"/>
<fileset dir="${poi.dir}" includes="*.jar"/>
<fileset dir="${itext.dir}" includes="*.jar"/>
build.xml:
<war destfile="${webapp.dist}/${webapp.war}"
webxml="${webapp.target}/WEB-INF/web.xml" compress="true">
...
<lib dir="${jasperreports.dir}" includes="*.jar"/>
<lib dir="${poi.dir}" includes="*.jar"/>
<lib dir="${itext.dir}" includes="*.jar"/>
decorators.xml
hay que mejorar eso, de momento solo le ocultamos al decorador la de pruebas que estamos usando, editUser
<pattern>/editUser*</pattern>

