Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Java (http://www.forosdelweb.com/f45/)
-   -   Jasper Report + iReport + NetBeans 4 (http://www.forosdelweb.com/f45/jasper-report-ireport-netbeans-4-a-280528/)

rjbeto 07/09/2005 20:40

Hola amigos

He visto muy buenas informationes en esto forum, sigo mis erros y no veo el erro. Alguem pude ayudarme?
Gracias

An error occurred at line: 12 in the jsp file: /Chamarjarper.jsp
Generated servlet error:
C:\jakarta-tomcat-5.0.28\work\Catalina\localhost\gustavo\org\apache\ jsp\Chamarjarper_jsp.java:72: cannot find symbol
symbol : method runReportToPdf(java.lang.String,java.util.Map,cone xao.Conexao)
location: class net.sf.jasperreports.engine.JasperRunManager
byte[] bytes = JasperRunManager.runReportToPdf(reportFile.getPath (), parameters, con);

Mi JSP:
<%@ page import="net.sf.jasperreports.engine.*" %>
<%@ page import="java.util.*" %>
<%@ page import="java.io.*" %>
<%@ page import="javax.sql.*" %>
<%@ page import="java.sql.*" %>
<%@ page import="javax.naming.*" %>
<%@ page errorPage="Erro2.jsp" %>
<%@ page import="java.lang.String" %>
<%@ page import="java.sql.*" %>
<%@ page import="conexao.Conexao" %>

<%
Conexao con = new Conexao();



File reportFile = new File(application.getRealPath("/WEB-INF/classes/SLVWagencia.jasper"));

Map parameters = new HashMap();


byte[] bytes = JasperRunManager.runReportToPdf(reportFile.getPath (), parameters, con);

response.setContentType("application/pdf");
response.setContentLength(bytes.length);
ServletOutputStream ouputStream = response.getOutputStream();
ouputStream.write(bytes, 0, bytes.length);
ouputStream.flush();
ouputStream.close();
%>

kaleidoscope 07/09/2005 21:35

Hola a todos,
alguien me podria ayudar a generar reportes consultando procedimientos almacenados por medio de iReport. He leido en este mismo foro que se puede, pero si alguien me pudiera dar más detalles se lo agradecería muchísimo.

leprechaum 08/09/2005 09:36

Cita:

Iniciado por wangulo
tengo un nuevo reto, y es que debo de implementar el JasperReports con PowerBuilder.
Alguien sabe si esto es posible??? Si lo es, me pueden decir cómo hacerlo

Gracias!!!!!!!!!!

Wendy,
Costa Rica
[email protected]

para qué necesitas el Jasper con Powerbuilder? el Datawindow hace lo mismo que el jasper

yimenz 08/09/2005 12:01

rjbeto,
Tu codigo esta bueno. Lo unico es que no es funcional para todos los navegadores, solo me funciono en explorer, Firefox no funciona.


Verifica las librerias del ireport, las tienes que poner en la carpeta WEB-INF/lib de tu aplicación. en mi caso tengo las siguientes: commons-beanutils.jar, commons-collections.jar, commons-digester.jar, commons-logging.jar, commons-logging-api.jar, iReport.jar, itext-1.02b.jar, jasperreports-0.6.7.jar, jdt-compiler.jar, log4j-1.2.8.jar, poi-2.0-final-20040126.jar y Conector.jar (Driver jdbc de mysql).

Te menciono todas las que tengo para que compares, algunas no las necesita el ireport otras si. Igual te las menciono todas.

Si lees el foro completo, por hay se habla de cuales son las librerias que se necesitan.

yimenz 09/09/2005 07:57

Aqui les dejo un buen tutorial para el ireport, aunque es para integrarlo con el jdeveloper, puede servir para cualquiera.

http://www.jdeveloperla.com/index.ph...d=87&Itemid=85

Ctx(Arquero23) 09/09/2005 13:37

Disculpen, no se si este tema ya fue expuesto, pero acabo de actualizarme de ireport de 0.4.0 a 0.5.1, y bueno me ha gustado el el .5 pero me surgio un problema tengo un sitio web y a la hora de querer ejecutar mis reportes compilados en 0.5.1 no jalaron por que no encontraban el motor del jasperreport, entonces lo que hice fue copiar el motor del 0.5.1 y ahora si corrian los que compile en el 0.5.1 pero no los que compile en el 0.4.0, se que la solucion es volver a compilar todos los reportes, pero el problema es que ya muchos reportes fueron liberados y no puedo enviarles los compilados de nuevo, hay alguna forma de que puedan convivir los dos reportes o como le hago para que me funcionen aunque lo haya compilado en diferentes versiones?????

Gracias de antemano a todos!!!
y saludos!!!

nainzp 10/09/2005 12:20

Error al Generar Reporte
 
Hola, saludos a todos.
Estoy tratando de generar un reporte con el iReports ya tengo creado el reporte y lo he compilado pero al llamar el jsp me sale el siguiente error:


org.apache.jasper.JasperException: No se puede compilar la clase para JSP

Ha tenido lugar un error en la línea: 31 en el archivo jsp: /rep_cursos.jsp
Error de servlet generado:
JasperFillManager cannot be resolved

Ha tenido lugar un error en la línea: 31 en el archivo jsp: /rep_cursos.jsp
Error de servlet generado:
JasperRunManager cannot be resolved

Ha tenido lugar un error en la línea: 31 en el archivo jsp: /rep_cursos.jsp
Error de servlet generado:
JasperReport cannot be resolved or is not a type

org.apache.jasper.compiler.DefaultErrorHandler.jav acError(DefaultErrorHandler.java:84)
org.apache.jasper.compiler.ErrorDispatcher.javacEr ror(ErrorDispatcher.java:328)
org.apache.jasper.compiler.JDTCompiler.generateCla ss(JDTCompiler.java:397)
org.apache.jasper.compiler.Compiler.compile(Compil er.java:288)
org.apache.jasper.compiler.Compiler.compile(Compil er.java:267)
org.apache.jasper.compiler.Compiler.compile(Compil er.java:255)
org.apache.jasper.JspCompilationContext.compile(Js pCompilationContext.java:556)
org.apache.jasper.servlet.JspServletWrapper.servic e(JspServletWrapper.java:296)
org.apache.jasper.servlet.JspServlet.serviceJspFil e(JspServlet.java:295)
org.apache.jasper.servlet.JspServlet.service(JspSe rvlet.java:245)
javax.servlet.http.HttpServlet.service(HttpServlet .java:802)


Me gustaría que me ayudaran, hace mucho rato estoy tratando de resolver este problema pero no sé que pasa, ya estoy un poco cansado y decidí recurrir a este foro. Espero que me ayuden y que de ahora en adelante empezemos a compartir todos nuestros conocimientos.
De antemano muchas gracias. Saludos a todos.

rjbeto 10/09/2005 16:24

Libreries del ireport, en la carpeta WEB-INF/lib
 
Hola Yimenz
He colocado las librerias del ireport, en la carpeta WEB-INF/lib de mi aplication. Pero sigo con los mismos problemas. No compreendo.
He visto el tutorial que tu diciste, pero creo que tengo mucho que conecer. Estoy trabajando com MySQL, ireport 0.5.1, jasper1.0.1, tomcat5.0.28 y explorer. Neste caso, o que devo hacer de configuration como tu diciste en JDeveloper?

Gracias

Cita:

Iniciado por yimenz
rjbeto,
Tu codigo esta bueno. Lo unico es que no es funcional para todos los navegadores, solo me funciono en explorer, Firefox no funciona.


Verifica las librerias del ireport, las tienes que poner en la carpeta WEB-INF/lib de tu aplicación. en mi caso tengo las siguientes: commons-beanutils.jar, commons-collections.jar, commons-digester.jar, commons-logging.jar, commons-logging-api.jar, iReport.jar, itext-1.02b.jar, jasperreports-0.6.7.jar, jdt-compiler.jar, log4j-1.2.8.jar, poi-2.0-final-20040126.jar y Conector.jar (Driver jdbc de mysql).

Te menciono todas las que tengo para que compares, algunas no las necesita el ireport otras si. Igual te las menciono todas.

Si lees el foro completo, por hay se habla de cuales son las librerias que se necesitan.


yimenz 11/09/2005 10:32

rjbeto, te agradeceria que leyeras todo el foro completo, hay una parte donde se resuelve tu problema

msi 11/09/2005 11:12

Conexion jdbc
 
Hola a todos. Acabo de empezar con jasperreports e ireports y he visto que lo primero era configurar la conexión pero me ha dado un error al testear la conexión con la base de datos.

En el Menú DataSource -> Connection / Datasource creo una nueva conexión con estos parámetros:

Name: DBPYC
JDBC Driver: org.gjt.mm.mysql.Driver
JDBC URL: jdbc:mysql://localhost/pycenre_dbpyc

Cuando pulso el botón Test me sale el error: SQL problems: Communication link failure: Bad handshake jdbc:mysql://localhost/pycenre_dbpyc

Me extraña este error ya que en mi aplicación tengo definido un pool de conexiones que funciona bien:

<data-sources>
<data-source key="DBPYC" type="org.apache.commons.dbcp.BasicDataSource">
<set-property property="driverClassName" value="org.gjt.mm.mysql.Driver"/>
<set-property property="url" value="jdbc:mysql://localhost/pycenre_DBPYC"/>
...
</data-sources>

Por si sirve de algo, lo único que he hecho ha sido copiar tools.jar en el directorio /lib de ireport (porque lo he leido) y no he cambiado nada más de ireport.

¿Alguna idea de este error o qué hay que añadir/modificar para que funcione la conexión?

Un saludo.

beto010159 11/09/2005 15:38

Debes poner:

Bolean.valueOf($P{parametro string}.equals("algo"))

O pudiera ser:

Bolean.valueOf($P{parametro numérico}intValue()==0)

GJS 12/09/2005 01:36

Hola Buenos días, necesitaria un manual de ireport en castellano, alguien sabe de alguno que esté bien. Muchas gracias!!!!!! :ojotes:

msi 12/09/2005 07:58

Bueno, ya encontré mi solución. El error me lo daba ya que tenía los 2 ficheros .jar sql-connector-java-XXX.jar, uno de versión más reciente que otro. Por casualidad borré el más antiguo y ya funciona.

nainzp 12/09/2005 08:01

Problema Resuelto
 
Hola,
Por fin pude resolver mi problema de generación de reportes con el iReports 4, el error que salía se daba porque no encontraba las librerías que se necesitan y todo porque se me había borrado la carpeta <<lib>> que va dentro del WEB-INF de mi proyecto, los JAR los colocaba en esta carpeta y por esta razón no los encontraba, así que es necesario crear la carpeta <<lib>> y colocar en esta todos los JAR que se vayan a utilizar y les aseguro que no tendrán ningún tipo de problema, por lo menos no del tipo que yo tuve.

saludos a todos.

Seguiremos en contacto y compartiendo todos nuestros conocimientos.

Saludos desde Colombia.

nainzp 12/09/2005 08:16

rjbeto, estuve revisando tu código, está bien, yo estuve haciendo unas pruebas con un código muy similar al tuyo y me funcionó bien, lo unico diferente que veo es que tu no haces el import
<%@ page import="net.sf.jasperreports.view.*" %>.
porque en el view hay unas clases que se necesitan para los reportes y el error que te sale es porque no tu código no incluye esas clases y creo que por eso es el error.
coloca este import en tu código, pruebas y nos cuentas a ver que sucede,
Suerte...

rjbeto 13/09/2005 06:31

Hola Nainzp

Gracias por tu mesage. Muy bueno!!! Mi reporte se queda bien. :aplauso:
Mi proximo etapa és intentar pasar parametros como por exepmlo festa de inicio y festa de fim, para visualisar todos los valores entre datas.

Muchas Gracias a Tú y a todos del foro.

Cita:

Iniciado por nainzp
rjbeto, estuve revisando tu código, está bien, yo estuve haciendo unas pruebas con un código muy similar al tuyo y me funcionó bien, lo unico diferente que veo es que tu no haces el import
<%@ page import="net.sf.jasperreports.view.*" %>.
porque en el view hay unas clases que se necesitan para los reportes y el error que te sale es porque no tu código no incluye esas clases y creo que por eso es el error.
coloca este import en tu código, pruebas y nos cuentas a ver que sucede,
Suerte...


ojvm_24 13/09/2005 15:16

reporte en blanco
 
k tal, mira yo tenia ese pequeño problema, lo de que no sale nada lo pudes ver en un hilo enterior que tiene mi nombre (ojvm_24) ahi puse como poder ver el contenido de un repoorte si este no tiene datos.

beto010159 14/09/2005 17:09

Necesito conocer cómo obtener un archivo en "texto plano editable" usando iReport.

Gracias.

oscaruss 15/09/2005 08:55

Pares Clave Valor
 
Felicitaciones por el contenido de este foro :aplauso:

Tengo un problemilla y es que al recuperar un dato de tipo string desde la bdd en un TextField, la Bdd me devuelve una sola letra y yo quiero sustituir esa letra por un nombre. Ejemplo: Valor en BBDD:'H' y yo en mi informe quiero mostrar el literal: "Hombre".

Gracias anticipadas!

oscaruss 15/09/2005 08:59

Procedimientos Almacenados
 
Hola
A mi me ha funcionado simplemente poniendo el nombre del procedimiento almacenado en: Fuentes de Datos/Consulta del informe.

Un saludo y suerte.

ovejota 15/09/2005 15:36

saludos.
tengo una consulta que no se si es posible resolverla en el ireport:
debo hacer una impresion masiva de carnets en hojas ya troqueladas. En una hoja entran 4 filas son 2 carnets por fila. Todos los carnets se encuentran en una tabla de la base de datos.
mi problema es como puedo hacer para mostrar 2 carnets en una misma fila de la hoja, ya que la informacion de los carnets están en tuplas distintas de la tabla, y me los mostraría uno abajo del otro.
desde ya muchas gracias a quien pueda darme una mano.
El foro está muy bueno, espero que siga así.

yimenz 16/09/2005 05:25

oscaruss


Correción:
("H".equals($F{tiposexo}))?"Hombre":("M".equals($F {tiposexo}))?"Mujer":""

jbailon 19/09/2005 01:25

Hola a todos. Soy nuevo en este foro y en el uso de Jasperreport. Me ha surgido un problema y es que la salida a un archivo en formato pdf no me funciona desde tomcat. El error que produce es el siguiente:

java.lang.ClassCastException
org.netbeans.modules.web.monitor.server.MonitorFil ter.doFilter(MonitorFilter.java:182)
org.apache.jasper.runtime.PageContextImpl.forward( PageContextImpl.java:414)
org.apache.jasper.runtime.PageContextImpl.handlePa geException(PageContextImpl.java:452)
org.apache.jsp.l001_0005fsubmit$jsp._jspService(l0 01_0005fsubmit$jsp.java:258)
org.apache.jasper.runtime.HttpJspBase.service(Http JspBase.java:107)
javax.servlet.http.HttpServlet.service(HttpServlet .java:856)
org.apache.jasper.servlet.JspServlet$JspServletWra pper.service(JspServlet.java:202)

org.apache.jasper.servlet.JspServlet.serviceJspFil e(JspServlet.java:382)
org.apache.jasper.servlet.JspServlet.service(JspSe rvlet.java:474)
javax.servlet.http.HttpServlet.service(HttpServlet .java:856)
org.netbeans.modules.web.monitor.server.MonitorFil ter.doFilter(MonitorFilter.java:305)

en el JSP incluyo el siguiente código para la salida PDF:

JRPdfExporter exporter = new JRPdfExporter();
exporter.setParameter(JRExporterParameter.JASPER_P RINT, print);
exporter.setParameter(JRExporterParameter.OUTPUT_F ILE_NAME, "C:/report.pdf");
exporter.exportReport();


Al hacer la salida me da el error y me genera un archivo PDF en blanco. Creo que puede ser un problema de fuentes. En la variable de entorno CLASSPATH tengo c:\windows\fonts\, pero esta no se si funciona para el tomcat. ¿Habría que decirle a tomcat de alguna forma donde están la fuentes de letras?. Bueno... a ver si alguien me puede echar una manita...

jbailon 19/09/2005 03:10

Estoy usando JasperReport 1.0.1, iReport 0.5.1 y tomcat 5.0.19 con NetBeans 3.6
En un servidor linux he conseguido esta traza de error
Se ha producido una excepción


Error: java.lang.NoSuchMethodError: com.lowagie.text.pdf.PdfContentByte.transform(Ljav a/awt/geom/AffineTransform;)V

Mensaje: com.lowagie.text.pdf.PdfContentByte.transform(Ljav a/awt/geom/AffineTransform;)V

Volcado de pila: java.lang.NoSuchMethodError: com.lowagie.text.pdf.PdfContentByte.transform(Ljav a/awt/geom/AffineTransform;)V at net.sf.jasperreports.engine.export.JRPdfExporter.e xportText(JRPdfExporter.java:1625) at net.sf.jasperreports.engine.export.JRPdfExporter.e xportPage(JRPdfExporter.java:466) at net.sf.jasperreports.engine.export.JRPdfExporter.e xportReportToStream(JRPdfExporter.java:406) at net.sf.jasperreports.engine.export.JRPdfExporter.e xportReport(JRPdfExporter.java:267) at org.apache.jsp.l001_0005fsubmit$jsp._jspService(l0 01_0005fsubmit$jsp.java:222) at org.apache.jasper.runtime.HttpJspBase.service(Http JspBase.java:107) at javax.servlet.http.HttpServlet.service(HttpServlet .java:853) at org.apache.jasper.servlet.JspServlet$JspServletWra pper.service(JspServlet.java:202) at org.apache.jasper.servlet.JspServlet.serviceJspFil e(JspServlet.java:382) at org.apache.jasper.servlet.JspServlet.service(JspSe rvlet.java:474) at javax.servlet.http.HttpServlet.service(HttpServlet .java:853) at org.apache.catalina.core.ApplicationFilterChain.in ternalDoFilter(ApplicationFilterChain.java:247) at org.apache.catalina.core.ApplicationFilterChain.do Filter(ApplicationFilterChain.java:193) at org.apache.catalina.core.StandardWrapperValve.invo ke(StandardWrapperValve.java:260) at org.apache.catalina.core.StandardPipeline$Standard PipelineValveContext.invokeNext(StandardPipeline.j ava:643) at org.apache.catalina.core.StandardPipeline.invoke(S tandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(Cont ainerBase.java:995) at org.apache.catalina.core.StandardContextValve.invo ke(StandardContextValve.java:191) at org.apache.catalina.core.StandardPipeline$Standard PipelineValveContext.invokeNext(StandardPipeline.j ava:643) at org.apache.catalina.core.StandardPipeline.invoke(S tandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(Cont ainerBase.java:995) at org.apache.catalina.core.StandardContext.invoke(St andardContext.java:2415) at org.apache.catalina.core.StandardHostValve.invoke( StandardHostValve.java:180) at org.apache.catalina.core.StandardPipeline$Standard PipelineValveContext.invokeNext(StandardPipeline.j ava:643) at org.apache.catalina.valves.ErrorDispatcherValve.in voke(ErrorDispatcherValve.java:170) at org.apache.catalina.core.StandardPipeline$Standard PipelineValveContext.invokeNext(StandardPipeline.j ava:641) at org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:172) at org.apache.catalina.core.StandardPipeline$Standard PipelineValveContext.invokeNext(StandardPipeline.j ava:641) at org.apache.catalina.core.StandardPipeline.invoke(S tandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(Cont ainerBase.java:995) at org.apache.catalina.core.StandardEngineValve.invok e(StandardEngineValve.java:174) at org.apache.catalina.core.StandardPipeline$Standard PipelineValveContext.invokeNext(StandardPipeline.j ava:643) at org.apache.catalina.core.StandardPipeline.invoke(S tandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(Cont ainerBase.java:995) at org.apache.coyote.tomcat4.CoyoteAdapter.service(Co yoteAdapter.java:223) at org.apache.coyote.http11.Http11Processor.process(H ttp11Processor.java:432) at org.apache.coyote.http11.Http11Protocol$Http11Conn ectionHandler.processConnection(Http11Protocol.jav a:386) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(P oolTcpEndpoint.java:534) at org.apache.tomcat.util.threads.ThreadPool$ControlR unnable.run(ThreadPool.java:530) at java.lang.Thread.run(Thread.java:536)

oscaruss 19/09/2005 08:52

Clave / Valor
 
Al recuperar un dato de tipo string desde la bdd en un TextField, la Bdd me devuelve una sola letra y yo quiero sustituir esa letra por un nombre. Ejemplo: Valor en BBDD:'H' y yo en mi informe quiero mostrar el literal: "Hombre".


*********************

[QUOTE=yimenz]oscaruss

Prueba con esto:
($F{sexocampo}.equals("H"))?"Hombre":($F{sexocampo }.equals("M")):"Mujer":""[


*****************
Muchas gracias, pero lamentablemente no funciona, me aparece el siguiente error:

Errors compiling .\Ireport_graficos.jasper! C:\iReport\Ireport_graficos.java:138:*:*expected
value*=*(java.lang.String)((((java.lang.String)fie ld_typecall.getValue()).equals("H"))?"Hombre");

C:\iReport\Ireport_graficos.java:138:*illegal*star t*of*expression
value*=*(java.lang.String)((((java.lang.String)fie ld_typecall.getValue()).equals("H"))?"Hombre");

C:\iReport\Ireport_graficos.java:226:*:*expected
value*=*(java.lang.String)((((java.lang.String)fie ld_typecall.getOldValue()).equals("H"))?"Hombre");

C:\iReport\Ireport_graficos.java:226:*illegal*star t*of*expression
value*=*(java.lang.String)((((java.lang.String)fie ld_typecall.getOldValue()).equals("H"))?"Hombre");

C:\iReport\Ireport_graficos.java:314:*:*expected
value*=*(java.lang.String)((((java.lang.String)fie ld_typecall.getValue()).equals("H"))?"Hombre");

C:\iReport\Ireport_graficos.java:314:*illegal*star t*of*expression
value*=*(java.lang.String)((((java.lang.String)fie ld_typecall.getValue()).equals("H"))?"Hombre");

6*errors net.sf.jasperreports.engine.JRException:*Errors*we re*encountered*when*compiling*report*expressions*c lass*file:
See*error*messages*above. ****
at*net.sf.jasperreports.engine.design.JRAbstractCl assCompiler.compileReport(JRAbstractClassCompiler. java:109) ****
at*net.sf.jasperreports.engine.design.JRDefaultCom piler.compileReport(JRDefaultCompiler.java:129) ****
at*net.sf.jasperreports.engine.JasperCompileManage r.compileReportToFile(JasperCompileManager.java:12 7) ****
at*net.sf.jasperreports.engine.JasperCompileManage r.compileReportToFile(JasperCompileManager.java:10 9) ****
at*it.businesslogic.ireport.IReportCompiler.run(IR eportCompiler.java:461) ****
at*java.lang.Thread.run(Thread.java:595)

morpheus0205 19/09/2005 10:54

Error javax.servlet.ServletException al correr reporte desde JSP
 
Cita:

Iniciado por wifer
Kangulo

este es el error que me genera cuando corro un reporte desde jsp.

si me puedes ayudar de agradezco.


descripción El servidor encontró un error interno () que hizo que no pudiera rellenar este requerimiento.

excepción

javax.servlet.ServletException: C:\Tomcat 5.5\webapps\empleo\empleo\reportes\oto.jasper
org.apache.jasper.runtime.PageContextImpl.doHandle PageException(PageContextImpl.java:846)
org.apache.jasper.runtime.PageContextImpl.handlePa geException(PageContextImpl.java:779)
org.apache.jsp.jsp.runreport_jsp._jspService(org.a pache.jsp.jsp.runreport_jsp:82)
org.apache.jasper.runtime.HttpJspBase.service(Http JspBase.java:99)
javax.servlet.http.HttpServlet.service(HttpServlet .java:802)
org.apache.jasper.servlet.JspServletWrapper.servic e(JspServletWrapper.java:325)
org.apache.jasper.servlet.JspServlet.serviceJspFil e(JspServlet.java:291)
org.apache.jasper.servlet.JspServlet.service(JspSe rvlet.java:241)
javax.servlet.http.HttpServlet.service(HttpServlet .java:802)


causa raíz

net.sf.jasperreports.engine.JRException: C:\Tomcat 5.5\webapps\empleo\empleo\reportes\oto.jasper
net.sf.jasperreports.engine.util.JRLoader.loadObje ct(JRLoader.java:74)
net.sf.jasperreports.engine.JasperFillManager.fill Report(JasperFillManager.java:162)
net.sf.jasperreports.engine.JasperRunManager.runRe portToPdf(JasperRunManager.java:125)
org.apache.jsp.jsp.runreport_jsp._jspService(org.a pache.jsp.jsp.runreport_jsp:65)
org.apache.jasper.runtime.HttpJspBase.service(Http JspBase.java:99)
javax.servlet.http.HttpServlet.service(HttpServlet .java:802)
org.apache.jasper.servlet.JspServletWrapper.servic e(JspServletWrapper.java:325)
org.apache.jasper.servlet.JspServlet.serviceJspFil e(JspServlet.java:291)
org.apache.jasper.servlet.JspServlet.service(JspSe rvlet.java:241)
javax.servlet.http.HttpServlet.service(HttpServlet .java:802)


nota La traza completa de la causa de este error se encuentra en los archivos de diario de Apache Tomcat/5.5.8.

Primero que nada, el foro es bastante bueno, por lo que espero puedan ayudarme, por lo que he leído (ya leí el foro completo las 18 pag.) primero defino mi ambiente de trabajo: iReports 0.5.1;Tomcat 5.5,Dreamweaver MX 2004 (solo como diseñador),jdk1.5.0_03, es todo, creo. Despues, y antes de que me regañeñ, como lo mencione lei el foro completo (este es el motivo de porque hice referencia al mensaje) y efectivamente alguien (Wifer, pregunta en pag. 6) se encontró con mi problema y alguien más(en este caso Kangulo,responde en pag. 7), pero en la respuesta pide verifique los *.jar (commons-beanutils-1.5.jar; commons-collections-2.1.jar; commons-digester-1.7.jar;commons-logging-1.0.2.jar;itext-1.3.1.jar;poi-2.0-final-20040126.jar;iReport.jar;jasperreports-1.0.1.jar) que sean los mismos en el servidor Tomcat(/common/lib) que los que tiene el iReports, en mi caso ya verifique e incluso los archivos los coloque en el WEB-INF/lib de mi sitio web, los coloque en mi jdk(/jre/lib/ext) todas las versiones son las mismas, de hecho utilizo las que vienen con iReportes (de hecho es lo unico que tengo), ya reinicie mi servidor y nada de nada. Alguien podría decirme alguna otra probable solución. Anexo mi código JSP:

/*******************CÓDIGO JSP**********/
//OBTENEMOS LOS CAMPOS DEL FORMULARIO
String ficha = request.getParameter("ficha").trim();
String tramite = request.getParameter("tramite").trim();
String nombre = request.getParameter("nombre").trim();
String cargo = request.getParameter("cargo").trim();
String nivel = request.getParameter("nivel").trim();
String dependencia = request.getParameter("dependencia").trim();
String organismo = request.getParameter("organismo").trim();
String centro = request.getParameter("centro").trim();
String depto = request.getParameter("depto").trim();
String ubicacion = request.getParameter("ubicacion").trim();
String tel_dom = request.getParameter("tel_dom").trim();
String tel_ofi = request.getParameter("tel_ofi").trim();
String extension = request.getParameter("extension").trim();
String autoriza = request.getParameter("autoriza").trim();
String email = new String("[email protected]");
String clave = new String();
//VERIFICAMOS EL TIPO DE TRAMITE PARA EL ASUNTO DEL MENSAJE
if(tramite.equals("SSR"))
clave = "ASIGNACIÓN DEL SERVICIO DE RADIOLOCALIZACIÓN";
if(tramite.equals("SSRC"))
clave = "ASIGNACIÓN DEL SERVICIO DE RADIOCOMUNICACIÓN";
if(tramite.equals("SSTC"))
clave = "ASIGNACIÓN DEL SERVICIO DE TELEFONÍA CELULAR";
if(tramite.equals("SSTC-M"))
clave = "ASIGNACIÓN DEL SERVICIO DE TELEFONÍA CELULAR PARA ENVIO RECEPCIÓN DE MENSAJES";
//REALIZAMOS LA CONEXION A LA BDD
//CLASE CREADA POR MI, DE HECHO NO LA NECESITO, PERO COMO PIDE LA CONEXION PUES LA ANEXO.
ConexionBD consultar = new ConexionBD();
consultar.Conectar();
//Este es la direccion del sitio donde tengos los .xml y hago referencia al archivo
File reportFile = new File(application.getRealPath("/solicitud2.jasper"));
Map parameters = new HashMap();
parameters.put("Nombre",nombre);
parameters.put("Ficha",ficha);
parameters.put("Cargo",cargo);
parameters.put("Nivel",nivel);
parameters.put("Dependencia",dependencia);
parameters.put("Organismo",organismo);
byte[] bytes = JasperRunManager.runReportToPdf(reportFile.getPath (),parameters,consultar.Conexion);
response.setContentType("application/pdf");
response.setContentLength(bytes.length);
ServletOutputStream OuputStream = response.getOutputStream();
OuputStream.write(bytes,0, bytes.length);
OuputStream.flush();
OuputStream.close();
//********************FIN DE CÓDIGO****************/

De hecho no necesito conexion a BDD ya que solo necesito los parametros, pero como no encontré en el foro como NO indicar conexion pues lo deje así.

De antemano muchas gracias :adios: y espero alguien puede auxiliarme. :cool:

yimenz 19/09/2005 12:14

oscaruss, perdona mi equivocación, ahora si prueba con esto:

("H".equals($F{tiposexo}))?"Hombre":("M".equals($F {tiposexo}))?"Mujer":""

[QUOTE=oscaruss]Al recuperar un dato de tipo string desde la bdd en un TextField, la Bdd me devuelve una sola letra y yo quiero sustituir esa letra por un nombre. Ejemplo: Valor en BBDD:'H' y yo en mi informe quiero mostrar el literal: "Hombre".


*********************

Cita:

Iniciado por yimenz
oscaruss

Prueba con esto:
($F{sexocampo}.equals("H"))?"Hombre":($F{sexocampo }.equals("M")):"Mujer":""[


*****************
Muchas gracias, pero lamentablemente no funciona, me aparece el siguiente error:

Errors compiling .\Ireport_graficos.jasper! C:\iReport\Ireport_graficos.java:138:*:*expected
value*=*(java.lang.String)((((java.lang.String)fie ld_typecall.getValue()).equals("H"))?"Hombre");

C:\iReport\Ireport_graficos.java:138:*illegal*star t*of*expression
value*=*(java.lang.String)((((java.lang.String)fie ld_typecall.getValue()).equals("H"))?"Hombre");

C:\iReport\Ireport_graficos.java:226:*:*expected
value*=*(java.lang.String)((((java.lang.String)fie ld_typecall.getOldValue()).equals("H"))?"Hombre");

C:\iReport\Ireport_graficos.java:226:*illegal*star t*of*expression
value*=*(java.lang.String)((((java.lang.String)fie ld_typecall.getOldValue()).equals("H"))?"Hombre");

C:\iReport\Ireport_graficos.java:314:*:*expected
value*=*(java.lang.String)((((java.lang.String)fie ld_typecall.getValue()).equals("H"))?"Hombre");

C:\iReport\Ireport_graficos.java:314:*illegal*star t*of*expression
value*=*(java.lang.String)((((java.lang.String)fie ld_typecall.getValue()).equals("H"))?"Hombre");

6*errors net.sf.jasperreports.engine.JRException:*Errors*we re*encountered*when*compiling*report*expressions*c lass*file:
See*error*messages*above. ****
at*net.sf.jasperreports.engine.design.JRAbstractCl assCompiler.compileReport(JRAbstractClassCompiler. java:109) ****
at*net.sf.jasperreports.engine.design.JRDefaultCom piler.compileReport(JRDefaultCompiler.java:129) ****
at*net.sf.jasperreports.engine.JasperCompileManage r.compileReportToFile(JasperCompileManager.java:12 7) ****
at*net.sf.jasperreports.engine.JasperCompileManage r.compileReportToFile(JasperCompileManager.java:10 9) ****
at*it.businesslogic.ireport.IReportCompiler.run(IR eportCompiler.java:461) ****
at*java.lang.Thread.run(Thread.java:595)


yimenz 19/09/2005 12:24

morpheus0205,

Que error te muestra cuando lo compilas ?

El mismo error que el de wifer ?

morpheus0205 19/09/2005 12:57

Solucionado Error javax.servlet.ServletException al compilar JSP
 
Cita:

Iniciado por yimenz
morpheus0205,

Que error te muestra cuando lo compilas ?

El mismo error que el de wifer ?

Sip, me mandaba el mismo error, pero ya solucioné agradezco su apoyo e interes y pues les cuento como lo solucione por si ha alguien le ocurre y anote de lo que no debe hacer.

Primero pues bajo la premisa de que no debe haber archivos *.jar de distintas versiones en los directorios del servidor (en mi caso Tomcat), ni en el WEB-INF/lib del sitio, ni en el directorio de iReports, los *.jar deben ser homogeneos (iguales, para evitar errores o conflictos por versiones diferentes), el caso es que a mi me mandaba error por que en el WEB-INF/lib de mi sitio desde el principio se me ocurrio copiar :aplauso: las carpetas del proyecto de jasperreports no el *.jar entonces como consecuencia cuando compilaba, mi JSP al importar las clases las traía del directorio WEB-INF/lib de mi sitio no usaba el *.jar (tomcat 5.5/common/lib/jasperreports-1.0.1.jar) que habia cargado y como las clases eran del jasperreports-1.0.2 pues entraba en conflicto, bueno espero sirva de algo mi experiencia, que ahora que me doy cuenta es algo tonta, en fin suerte y gracias de nuevo. :adios:

morpheus0205 19/09/2005 13:33

Reporte sin cadena de conexion, solo parametros.
 
Cita:

Iniciado por antony_fire
Hola a todos...

Como hago un reporte sin enviar la conexion, solo enviando parametros

Gracias de antemano

Citando la pregunta anterior y dado que la respuesta no fue muy clara (bueno por lo menos para mi no ;-) ). Espero ampliar un poco más lo dicho por inydesystem. Anexo Ejemplo:

File reportFile = new File(application.getRealPath("/reportes/solictud2.jasper"));
if (!reportFile.exists())
throw new JRRuntimeException("File solicitud2.jasper no fue encontrado.");
Map parameters = new HashMap();
parameters.put("Nombre",nombre);
parameters.put("Ficha",ficha);
byte[] bytes = JasperRunManager.runReportToPdf(reportFile.getPath (), parameters, new JREmptyDataSource());
response.setContentType("application/pdf");
response.setContentLength(bytes.length);
ServletOutputStream ouputStream = response.getOutputStream();
ouputStream.write(bytes, 0, bytes.length);
ouputStream.flush();
ouputStream.close();
//**************FIN EJEMPLO***************//

Como observamos en el ejemplo, esto es para generar un PDF y la clave esta en el new JREmptyDataSource(), ya que este si observamos el API, dice:
A simple data source implementation that simulates a data source with a given number of virtual records inside. It is called empty data source because even though it has one or more records inside, all the report fields are null for all the virtual records of the data source.

Traducido: Implementación de un origen de datos simple que simula una fuente de datos con un número virtual de registros. Esta es llamada vacía porque aunque tiene uno o más registros, todos los campos del reporte son null para todos los registros virtuales del origen de datos.

Bueno espero sirva de algo, yo así lo trabaje y me funciono bastante bien. :-D


La zona horaria es GMT -6. Ahora son las 14:01.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2025, Jelsoft Enterprises Ltd.