Seleccionar página

Bueno, hoy la he liado parda y en vez de borrar los compilados (.jasper), he borrado los fuentes (.jrxml) de los informes en Jasper.

He intentado recuperarlos con la función extundelete pero no han aparecido pero he descubierto que tenía todavía en el disco el .jasper.

Pues bien, hay dos maneras de recuperar el .jrxml:

  • A través del siguiente código, extraido de la web de jasperForge:
import net.sf.jasperreports.engine.JRException; 

import net.sf.jasperreports.engine.JasperReport; 

import net.sf.jasperreports.engine.design.JasperDesign; 

import net.sf.jasperreports.engine.util.JRLoader; 

import net.sf.jasperreports.engine.xml.JRXmlWriter; 

class ConvertJasperJrxml { 

    public static String sourcePath, destinationPath, xml; 

    public static JasperDesign jd = new JasperDesign(); 

    public static void main(String[] args) { 

        sourcePath = "/tmp/neodoo_file.jasper"; 

        destinationPath = "/tmp/neodoo_file.jrxml"; 

        try { 

          JasperReport report = (JasperReport) JRLoader.loadObject(sourcePath); 

          JRXmlWriter.writeReport(report, destinationPath, "UTF-8"); 

        } catch (JRException e) { 

        e.printStackTrace(); 

      } 

  } 

}
  • Y total… Después descubro que basta con abrir directamente el documento con el editor visual iReport (ojo con la versión, siempre ha de ser mayor o igual al compilado) y obtendrás de nuevo el .jrxml.