Instalar jasperReport e IReport en Netbeans 8.0



   A continuación os explico como instalar jasperReport e iReport en Netbeans 8.0. No sé si es la forma más correcta, pero es como a mi me ha funcionado, ya que las librerias de jasperReport me han dado un poco de dolor de cabeza porque no me funcionaban, pero al final lo conseguí.
   Lo primero que hacemos es instalar iReport en netbeans 8.0. Este plugin en teoría no es necesario para utilizar jasperReport por separado. Este plugin nos facilita el diseño de las plantillas de jasperReport desde Netbeans.

  Nos vamos a la página de netbeans y a la sección de plugins iReport y nos lo descargamos. No hay ninguno para la versión 8.0 de netbeans pero el último que hay que es el de la 7.4 nos sirve.

  Una vez descargado nos vamos a Netbeans a Tools->Plugins (Herramientas->Plugins) y a la pestaña de Downloaded. Le damos al botón "AddPlugins" y buscamos la carpeta descomprimida del fichero que nos hemos descargado antes, el de iReport.



  Con esto ya tenemos instalado el plugin y la librería principal de jasperReport. En Tools->Options (Herramientas->Opciones) podemos verlo.


  Ahora necesitamos añadir a la librería otros ficheros y librerías para que nos funcione correctamente. Estos ficheros son una recopilación que he ido guardando cuando me investigué como instalar jasperreports, y son con los que me ha funcionado todo. En este enlace os lo podéis descargar:


  Ahora nos vamos a las opciones de nuestro proyecto, botón derecho Properties, seleccionamos Libraries, pinchamos en la de jasperReports y le damos al botón Edit. Buscamos los ficheros que os he mencionado antes y adjuntamos todo y le damos a guardar.




  Ahora vamos a hacer una prueba para ver si todo funciona. Lo primero de todo es crear un fichero jasper, que es como una plantilla. Con el plugin de iReport para Netbeans es fácil. En nuestro proyecto, en el paquete le damos a botón derecho y New. Elegimos Report y Empty Report. Se abren en Netbeans unas pantallas para diseñar nuestro fichero. Lo vamos a quedar vacío. En otro tutorial lo explicaré :).



  Por último un pequeño código que lo que hace es leer este report (extensión jrxml) en un pdf. El código y el proyecto de prueba lo tengo en este enlace para que os lo podais descargar:




89 comentarios: Deja tu comentario

  1. hola amiga, soy nuevo en eso de jasperReports me sirvió muchísimo tu blog pero tengo un detalle, a la hora de imprimir el pdf no me reconoce las demás fuentes de letra solo me reconoce SansSerif no se si me podrías ayudar con eso te lo agradecería muchísimo

    ResponderEliminar
    Respuestas
    1. Muchas gracias. Creo que tienes que importarlas o agregarlas como librerias. A ver si esta página te ayuda:
      http://developando.com/blog/jasperreports-font-extensions
      Sino pues intentaré buscar yo. ¿Sabes si te sale algún tipo de error en la consola?
      Un saludo.

      Eliminar
    2. errores no me marcan, bueno me explico a la hora de estar elaborando el reporte todo bien e igual al darle en vista igual me sigue marcando el tipo de letra que le puse ya el detalle es a la hora de guardar el reporte en documentos ya es cuando no me guarda el tipo de letra y asta se me modifica si es que las puse en negritas o subrayado a y también la opción de justificado no la reconoce las demás si pero esa es la única que no

      Eliminar
    3. Me inclino a pensar que tiene que ser algún problema de librerias porque hay que añadir las fuentes. A ver si puedo probarlo yo en cuanto tenga tiempo.

      Eliminar
    4. muchas gracias por tu ayuda me sirvió mucho.

      bueno y pues te queria molestar de nuevo, bueno mira tengo un detalle al sacar listas, bueno yo solo pongo una sola fila y de hay en automatico se van multiplicando dependiendo la cantidad de alumnos pero el detalle es el formato porque la tabla solo me sale en blanco y bueno mi pregunta es, si es posible ir poniendo la secuencia blanco-gris sin tener que poner una segunda fila?

      Eliminar
    5. Si es posible, se hace con los estilos. En iReport en la parte izquierda "Report Inspector" viene la opción de estilos. Le das a crear un nuevo estilo y en las propiedades eliges las opciones que quieras (color de fondo, letra, ...). Después de crear el estilo se lo tienes que asignar a la parte del reporte que quieras, y eso se hace en el mismo Report Inspector, señalas la parte que quieras, por ejemplo "detail1" y en las propiedades le asignas el estilo creado.
      En el caso que quieras cada línea de un color, a la hora de crear el estilo tienes que agregar una cosa más. Pinchas con el botón derecho en el estilo creado y le das a "Agregar Conditional Style" y pones lo siguiente: new Boolean($V{REPORT_COUNT}.intValue()%2 == 0) ó $V{REPORT_COUNT}%2 == 0
      Como no sé si me he explicado bien te pongo una imágen:
      https://www.dropbox.com/s/b7qxaz3m41jhz5m/estilo_jasper.jpg?dl=0

      Eliminar
  2. Buenas, me sirvió mucho la información de tu blog, pero tengo un problema al querer crear mi reporte, en la interface del ireport no me aparece la paleta de edicion, lo cual me difículta mucho la edicion de mi reporte.

    ResponderEliminar
    Respuestas
    1. Holaaa. Si estás dentro de netbeans te tienes que ir al menú Windows/IDE Tools/Palette y ya se te muestra a la derecha para poner los campos "report elements y demás". Espero que te sirva ;)

      Eliminar
  3. Hola, Gracias por tu ayuda me sirvio... pero tengo un problema, en el diseño al tratar de ordenar, cambiar tipo de letra y eso hace que se me cuelgue la pc y no funciona hasta que la reinicie, que puede ser ?

    Gracias por tu respuesta.

    ResponderEliminar
    Respuestas
    1. La verdad es que es raro que te haga eso, y ahora mismo no sé de qué puede ser. ¿Qué PC tienes?

      Un saludo.

      Eliminar
  4. Que tal amigos, en mi caso la instalacion se hace bien, creo un reporte sencillo y se hace bien, mi problema es que al crear un reporte con parametros no me abre nada, me podrian ayudar..?

    ResponderEliminar
    Respuestas
    1. Perdón por responder tan tarde pero es que no me salió aviso de mensaje :S

      ¿Te sale algún error? ¿Cómo estás crando el reporte?

      En este otro tutorial te muestro como crear reportes (sin conectarte a una base de datos, mandando datos desde java):


      http://sandritascs.blogspot.com.es/2015/01/reportes-con-jasperreports-e-ireport.html

      Eliminar
  5. hola disculpa las molestias es que tengo un pequeño problema es que tengo que mandar una imagen de una base de datos a un reporte pero no encuentro como hacerlos no se si me podrías ayudar te lo agradecería muchisimo

    ResponderEliminar
    Respuestas
    1. No sé si este video te puede ayudar.

      https://www.youtube.com/watch?v=lxLITPQvJRw

      Eliminar
  6. cuando imprime la factura con valores nulos en campo de costo .cual sera el problema .por q la hora realizar mi venta tengo dos opciones , una es para poder ver en vista prvia dond sale dto bien costo monto todo .
    pero cuand imprimo la factura directo sin vista previa me sale o imprime con valores nulos en campos d costo y precios.

    ResponderEliminar
    Respuestas
    1. Controla los datos cuando vayas a ponerlo en la plantilla. Si es nulo lo pones a vacio y en el documento te saldrá en blanco y no con null

      if($valor==null)
      $valor="";

      Algo así

      Un saludo.

      Eliminar
  7. Hola amiga me sirvio mucho solo que tengo un detalle al darle preview me manda bien todo pero al momento de correr el sistema completo me manda esto mensaje de error:Error evaluating expression for source text: new java.lang.Integer(1)

    ResponderEliminar
    Respuestas
    1. En algún sitio tienes que tener un Integer y pasarle otra cosa y te está saltando el error.
      Mira también si en la vista xml del reporte el atributo "language" tiene el valor de "java" y no "groovy"
      Un saludo.

      Eliminar
    2. Donde encuentro la opcion de lenguaje gracias tengo ese mismo error

      Eliminar
    3. Donde encuentro la opcion de lenguaje gracias tengo ese mismo error

      Eliminar
    4. En la vista del xml (el código), en la primera línea, hay un atributo que pone "language" y tienes que poner java en vez de groovy.

      También hay que cambiarlo en (si has puesto el plugin ireport): Tools->Options, seleccionas ireport y en la pestaña "General" pone también lo del lenguaje.

      Un saludo.

      Eliminar
    5. parece el pagina de adrian ruz cruz

      Eliminar
    6. parece tipó tipo adrian esta pagina

      Eliminar
    7. su marido el chelo y adrian y glendy viendo

      Eliminar
  8. Que tal buen dia. Excelente Blog. Oye una pregunta me marca un error y no se a que se deba espero que me puedas ayudar es este: mensaje de error:Could not resolve style(s): Title, Column header, Row, SubTitle, Detail

    ResponderEliminar
    Respuestas
    1. Pues así en principio no sé exactamente a que se debe. ¿Has añadido algún estilo o algo? Quizás hayas importado algún estilo que luego no encuentra. No sé exactamente.

      Eliminar
  9. Hola Que tal. me sirvio mucho este aporte pero tengo una duda ya termine mi reporte pero al corre el sistema completo me manda un mensaje que es "NULL" a que se debera? cuando hago el preview en el reporte me manda todo bien! Espero tu respuesta muchas gracias

    ResponderEliminar
    Respuestas
    1. Ponme más detalles del error (copia el error que te pone en java) para saber más detalles.

      Un saludo.

      Eliminar
  10. net.sf.jasperreports.engine.JRRuntimeException: Unknown hyperlink target 0

    me sale este error. googleando dice que el ireport y jasperreport deben ser la misma version, pero tu usas versiones diferentes TwT porque a ti te sale y a mi no, yo lo estoy haciendo en web .

    ayudame

    ResponderEliminar
    Respuestas
    1. Quizás sea porque la versión que tengas del plugin en netbeans tenga que ser por lo menos superior. Prueba a hacer lo que dicen, de poner las mismas versiones a ver si te sigue fallando.
      Lo de que no me salga a mi pues no sé por qué. Es lo mismo que hay a gente que le sale el error del uuid y a otras no.
      Un saludo.

      Eliminar
  11. Hola que tal excelente blog!!......tengo un par de consultas al momento de crear el reporte, normal se crea y me muestra el designer y el preview , incluso al momento de correr el programa me muestra el pdf del reporte normal tambien ,pero a la par me sale el siguiente error:
    log4j:WARN No appenders could be found for logger (net.sf.jasperreports.extensions.ExtensionsEnvironment).
    log4j:WARN Please initialize the log4j system properly.
    ......y otra cosa es que tampoco puedo editar el reporte, es como si las opciones de la paleta estuviesen desactivadas o bloqueadas (esto me pasa con todo los reportes que creo)
    te agradeceria de antemano si me pudieses ayudar!!

    ResponderEliminar
    Respuestas
    1. Lo estás usando con mysql? Es que he visto páginas y pone que tiene que ver con algo de la base de datos. También he encontrado esto:
      http://stackoverflow.com/questions/14142621/how-to-recovery-this-error-log4jwarn-no-appenders-could-be-found-for-logger-n

      En cuanto a q no te deja editar el reporte, recuerdo que a mi me pasaba. Lo editas desde netbeans? yo es que lo editaba desde fuera de netbeans cn el ireport.

      Un saludo.

      Eliminar
  12. Hola sandra, mi duda es que tengo Netbeans 8.0.2 y tengo un problema con las librerias yo quiero sacar los datos de una Jtable y colocar los mismo datos en el reporte. Hasta ahora no me salio me podrias dar una gran mano...te agradezco

    ResponderEliminar
    Respuestas
    1. Hola Enzo. En este otro post que tengo hecho, explico como pasar datos en el reporte desde java.

      http://sandritascs.blogspot.com.es/2015/01/reportes-con-jasperreports-e-ireport.html

      Un saludo y espero que te sirva.

      Eliminar
  13. Amiga sabes aque se deba este error me aparece este mensaje ala hora de generar el reporte net.sf.jasperreports.engine.JRRuntimeException: Unknown hyperlink target 0

    ResponderEliminar
    Respuestas
    1. Holaaa. Según lo que he leído es porque las versiones de jasperreport de netbeans y de ireport son diferentes, tienen que ser igual o superior.

      "Verifica que la versión de jaspert reports del proyecto web sea la misma o superior que la versión de jasperreports que usa iReport."

      http://robert-reiz.com/2011/04/22/jrruntimeexception-unknown-hyperlink-target-0/

      http://matoosfe.com/blog/?p=159

      Un saludo.

      Eliminar
  14. Hola, muchas gracias por el tutorial solo tengo una duda, es posible desplegar un reporte en un JDialog? es decir, que al oprimir un botón de la ventana, me despliegue en la misma el reporte desde Ireport? Agradecería tu respuesta. Saludos!

    ResponderEliminar
    Respuestas
    1. Claro que sí. Tendrás que crear el contenedor de JDIalog y luego hacer con java que se abra un documento (el reporte que se ha creado) en esa ventana.

      Eliminar
  15. Hola ! te hago una consulta, tamien estoy usando netbeans 8 y segui todos tus pasos pero el reporte me aparece en blanco, intetne hacer uno solo con un titulo, sin concetarse a la base ni nada muy basico y tambien me aparece e blando.. que podra ser? muchas graciass

    ResponderEliminar
    Respuestas
    1. Holaa pues así al principio no sé. ¿Te sale algún error en consola o excepción?. Si puedes poner alguna captura o código para ayudarte sería mejor :P
      Un saludo.

      Eliminar
  16. Me Sale errores cuando trabajo con parametros con la Base de datos Sql Server es el famoso error net.sf.jasperreports.engine.JRRuntimeException: Unknown hyperlink target 0 lo que estoy haciendo es crear un reporte de una lista pero esta lista tiene un where el cual lo mando un parametro desde mi formulario(Los tipos de Valores son Iguales son int en el reporte la base de Datos y en el Formulario mando un int tambien el nombre del parametro es el mismo en el formulario cuando lo coloco en mi HashMap) a pero cuando lo visualizo solo el reporte si me funciona y me pide que ingrese el parametro el dilema es cuando lo invoco desde un formulario Auxilioooo!!!!

    ResponderEliminar
    Respuestas
    1. Hola, no puedo ayudarte mucho porque no se me ha dado el caso, pero he estado leyendo y puede ser por la versión del iRport y del jasperReport, tienen que ser las mismas versiones.
      Un saludo.

      Eliminar
  17. cuando llamo al procedimiento almacenado
    {call sigma.mk_etiquetas_pkg.sp_lineasxItem ($P{ORACLE_REF_CURSOR})}

    mesale error: tipo de columna no valido

    ResponderEliminar
  18. me sale error en ireport .. cuando llamo a un procedimiento almacenado
    {call sigma.mk_etiquetas_pkg.sp_lineasxItem ($P{ORACLE_REF_CURSOR})}
    me sale error: tipo de columna no valida

    ResponderEliminar
    Respuestas
    1. Hola, si puedes pegar el error que te da mejor para poder ayudarte. Pero puede ser porque estés poniendo un nombre de columna que no corresponde con el de la base de datos.
      Un saludo.

      Eliminar
  19. Ohh.. sandrita te amo. Me salvaste la visa

    ResponderEliminar
  20. Hola sandra que tal me alegra mucho que respondas a las preguntas , aqui una duda , tengo el netbeans 8.1 y he seguido tus paos , pero me sale error de "split is deprecated . Use default Split" y no se q es :(

    ResponderEliminar
    Respuestas
    1. Hola, perdón por el retraso en responder pero estuve de vacaciones.
      Lo del split seguramente sea algún parámetro/atributo en el xml del reporte que no le está gustando.

      Te tiene que venir la línea o algo donde ocurre eso.
      Un saludo.

      Eliminar
  21. Hola sandra que tal me alegra mucho que respondas a las preguntas , aqui una duda , tengo el netbeans 8.1 y he seguido tus paos , pero me sale error de "split is deprecated . Use default Split" y no se q es :(

    ResponderEliminar
    Respuestas
    1. Hola, perdón por el retraso en responder pero estuve de vacaciones.
      Lo del split seguramente sea algún parámetro/atributo en el xml del reporte que no le está gustando.

      Te tiene que venir la línea o algo donde ocurre eso.
      Un saludo.

      Eliminar
  22. Genia, ídola, busqué mucho hasta que encontré esta respuesta. Gracias!!!

    ResponderEliminar
  23. hola tengo un error de error :java.lang.NullPointerException
    at com.jaspersoft.ireport.designer.JrxmlEditorSupport$3.run(JrxmlEditorSupport.java:267)
    at org.netbeans.modules.openide.util.NbMutexEventProvider$Event.doEvent(NbMutexEventProvider.java:118)
    at org.netbeans.modules.openide.util.NbMutexEventProvider$Event.writeAccess(NbMutexEventProvider.java:83)
    at org.netbeans.modules.openide.util.LazyMutexImpleme......
    y no se como solucionarlo ademas no guarda los cambios del reporte y me muestra el error anteriomente mencionado espero q me pueda ayudar..

    ResponderEliminar
    Respuestas
    1. Alguna de las variables que tienes tiene que estar apuntando a null o vacia o algo no está bien inicializado o también quizás no está cogiendo la librería.

      Eliminar
  24. amiga pasame las librerias me urge

    ResponderEliminar
    Respuestas
    1. Están en el blog, este es el enlace:
      https://www.dropbox.com/sh/d48489l8i4pvecn/AAAp7pg-6T7h0LHhWiSBZguFa?dl=0

      Eliminar
  25. Buen día y gracias por tus orientaciones. Disculpa si me puedes ayudar te agradezco.
    hago la conexión y demás pero no me permite ver el preview me devuelve a designer.
    Mil gracias
    Quedo atenta

    ResponderEliminar
  26. Buen día y gracias por tus orientaciones. Disculpa si me puedes ayudar te agradezco.
    hago la conexión y demás pero no me permite ver el preview me devuelve a designer.
    Mil gracias
    Quedo atenta

    ResponderEliminar
    Respuestas
    1. Hola, mira bien la configuración y que tengas los plugins y el iReport bien instalados, o si te da algún tipo de error.
      Un saludo.

      Eliminar
  27. hola Sandra estoy creando un reporte en netbeans pero al generarlo me manda este error:

    Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: cannot assign instance of net.sf.jasperreports.engine.base.JRBaseStyle to field net.sf.jasperreports.engine.base.JRBaseParagraph.paragraphContainer of type net.sf.jasperreports.engine.JRParagraphContainer in instance of net.sf.jasperreports.engine.base.JRBaseParagraph

    En vista previa lo genera correctamente, pero al momento de ejecutar el sistema me arroja el error.

    Si pudiera ayudarme se los agradecería mucho.

    ResponderEliminar
    Respuestas
    1. La verdad no sé cuál es ese error. Busca en la internet, seguroq que encuentras algo.

      Eliminar
  28. el error es "cannot assign instance of net.sf.jasperreports.engine.base.JRBaseStyle to field net.sf.jasperreports.engine.base.JRBaseParagraph.paragraphContainer of type net.sf.jasperreports.engine.JRParagraphContainer in instance of net.sf.jasperreports.engine.base.JRBaseParagraph"

    He buscado por internet desde hace dos dias y no consigo como solucionar.

    Agradezco cualquier colaboracion.

    ResponderEliminar
    Respuestas
    1. Buenas, no sé tampoco por qué sale ese error.

      He buscado y en un sitio dicen lo siguiente:
      Que en el reporte estarás usando un campo de tipo "Static Text Field", y no se puede usar ese sino uno del tipo "Text Field". Le tienes que dar a botón dereco en el texto Static y convertirlo.

      http://stackoverflow.com/questions/8006507/ireport-cannot-assign-instance-of-net-sf-jasperreports-engine-base-error

      Eliminar
    2. Perdón que ya te había respondido a esto jejeje

      Eliminar
  29. Hola Sandra gracias por tu respuesta, converti todo y aun asi sale el mismo error.

    ResponderEliminar
    Respuestas
    1. Buenas, pues no sé de que puede ser. Intenta hacer de nuevo el reporte, poco a poco, es decir, primero vacío y prueba si te da error, después añades algo y prueba. Así hasta que veas que es lo que está fallando, es lo que se me ocurre.
      Un saludo.

      Eliminar
  30. buenos dias señoritas sandrita en donde puedo descargar la libreria de jaserReport

    ResponderEliminar
    Respuestas
    1. En este post viene el enlace a las librerías jasperReport ( pone LIBRERÍAS JASPERREPORT)

      Eliminar
    2. Buenos días, acá nos das la facilidad de descargar tu compilación de librerias por lo cual tr agradezco mucho, pero si luego estas se actualizan, dónde las podríamos descargar?, existe alguna página oficial?

      Eliminar
    3. Es facilísimo, sólo tienes que escribir librerías jasperreport en el buscador de google o el que sea y ya te viene. La primera entrada:
      https://sourceforge.net/projects/jasperreports/files/jasperreports/

      Eliminar
  31. Muchas gracias!!!!! Me funcionó al 100

    ResponderEliminar
  32. Hola Sandra He hecho todo tal cual explicas a la hora de correr me marca lo siguiente
    ago 08, 2017 8:45:43 PM org.apache.commons.digester.Digester error
    GRAVE: Parse Error at line 2 column 473: cvc-complex-type.3.2.2: No está permitido que el atributo 'uuid' aparezca en el elemento 'jasperReport'.
    org.xml.sax.SAXParseException; lineNumber: 2; columnNumber: 473; cvc-complex-type.3.2.2: No está permitido que el atributo 'uuid' aparezca en el elemento 'jasperReport'.

    podrias ayudarme?????

    ResponderEliminar
    Respuestas
    1. Tienes que ver el código fuente del reporte y quitar todos los uuid que aparezcan, es un error que pasa a veces, creo que en el video lo explico. Un saludo.

      Eliminar
  33. Hola Sandra me podrias ayudar en que estoy fallando me da este error

    Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: cannot assign instance of net.sf.jasperreports.engine.base.JRBaseStaticText to field net.sf.jasperreports.engine.base.JRBaseParagraph.paragraphContainer of type net.sf.jasperreports.engine.JRParagraphContainer in instance of net.sf.jasperreports.engine.base.JRBaseParagraph

    si me podrias ayudar.Gracias

    ResponderEliminar
    Respuestas
    1. En un comentario anterior también pone lo mismo y le dije esto:

      He buscado y en un sitio dicen lo siguiente:
      Que en el reporte estarás usando un campo de tipo "Static Text Field", y no se puede usar ese sino uno del tipo "Text Field". Le tienes que dar a botón dereco en el texto Static y convertirlo.

      http://stackoverflow.com/questions/8006507/ireport-cannot-assign-instance-of-net-sf-jasperreports-engine-base-error

      Pero si no te funciona no sé que puede ser, intenta lo siguiente:
      Intenta hacer de nuevo el reporte, poco a poco, es decir, primero vacío y prueba si te da error, después añades algo y prueba. Así hasta que veas que es lo que está fallando, es lo que se me ocurre.

      Eliminar
  34. Muchas gracias señorita por tu trabajo. Me sirvió de mucha ayuda. Saludos desde Perú

    ResponderEliminar
  35. hola Sandra ME HA PASADO QUE ESTOY USANDO JASPERSOFT STUDIO 6.3 Y tengo el .jar 6.3, me muestra los reportes en el visor y todo PEEEERO en los resultados de las consultas me aparecen los valores NULL todos, y en el preview del jasper si me aparecen los resultados correctos, tu sabes que podría ser, he buscado por todas partes

    ResponderEliminar
    Respuestas
    1. Así sin ver el código es un poco difícil ayudarte. Si te aparecen en el preview del jasper tienen que estar por lo que a ver si va a ser de cómo lo muestras.

      Eliminar
  36. a mi me sale todo bien , pero al momento de darle clic a guardar el reporte me aparece esto

    Qt:Untested Windows versión 10.0 detected …. y si me lo guarda y todo, solo quisiera saber a q se deba eso

    ResponderEliminar