Java - Error en java

 
Vista:
Imágen de perfil de Claudia

Error en java

Publicado por Claudia (13 intervenciones) el 14/03/2023 20:58:30
Hola soy nueva en java y estoy ejecutando mi primer programa pero me aparece el siguiente error que no puedo sacar...
Exception in thread "main" java.lang.NullPointerException
at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:158)
at PruebaRep.Main.main(Main.java:57)


Aca esta el programa...

package PruebaRep;
//import DT.Detalle;
import java.io.File;
import java.io.IOException;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;

//PDF
//import com.itextpdf.text.Document;
import com.itextpdf.text.DocumentException;
import com.itextpdf.text.FontFactory;
import com.itextpdf.text.Phrase;
import com.itextpdf.text.pdf.PdfWriter;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.security.Principal;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.logging.Level;
import java.util.logging.Logger;
import PruebaRep.DetalleDatasource;
import static com.itextpdf.text.pdf.Barcode128.Barcode128CodeSet.C;
import net.sf.jasperreports.engine.JREmptyDataSource;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.engine.util.JRLoader;
import net.sf.jasperreports.view.JasperViewer;


/**
*
* @author czavala
*/
public class Main {

public static void main(String[] args) throws ParserConfigurationException, SAXException, DocumentException, JRException
{
try {
//Report
JasperReport jr = (JasperReport) JRLoader.loadObject(Principal.class.getResource("C\\Users\\czavala\\Documents\\NetBeansProjects\\JavaApplication1\\src\\PruebaRep\\reporte1.jasper"));
Map parametros = new HashMap<String, Object>();

// Datasource
DetalleDatasource datasource = new DetalleDatasource();



File file = new File("C\\Users\\czavala\\Documents\\NetBeansProjects\\JavaApplication1\\Fact.xml");




DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document document = db.parse(file);
document.getDocumentElement().normalize();
System.out.println("Elemento raiz: " + document.getDocumentElement().getNodeName());

NodeList nList = document.getElementsByTagName("EnvioDTE");
System.out.println("Contenido del documento: ");
System.out.println();

for (int i = 0; i < nList.getLength(); i++) {
Node list = nList.item(i);

System.out.println("Nombre elemento actual: " + list.getNodeName());

if (list.getNodeType() == Node.ELEMENT_NODE ) {
Element element = (Element) list;

System.out.println("xmlns: " + element.getAttribute("xmlns"));
System.out.println("Rut Emisor: " + element.getElementsByTagName("RutEmisor").item(0).getTextContent());
System.out.println("Folio: " + element.getElementsByTagName("Folio").item(0).getTextContent());
System.out.println("Fecha: " + element.getElementsByTagName("FchEmis").item(0).getTextContent());



//Report




//Report

//PDF
// Phrase p = new Phrase(element.getElementsByTagName("RutEmisor").item(0).getTextContent(), FontFactory.getFont("Arial", 12));

// docpdf.add(p);
// PDF
}

// leer detalle
NodeList nDet = document.getElementsByTagName("Detalle");


System.out.println("Contenido del detalle: ");

// Metodo detalle ireport


List deta = new LinkedList();

String arrayDet[];
arrayDet = new String[10];

for (int x = 0; i < nDet.getLength(); x++) {

Node det = nDet.item(x);


if (list.getNodeType() == Node.ELEMENT_NODE ) {
Element eleDet = (Element) det;

System.out.println("Linea: " + eleDet.getElementsByTagName("NroLinDet").item(0).getTextContent());
arrayDet[1] = eleDet.getElementsByTagName("NroLinDet").item(0).getTextContent();

System.out.println("Descripción: " + eleDet.getElementsByTagName("NmbItem").item(0).getTextContent());
System.out.println("Monto: " + eleDet.getElementsByTagName("MontoItem").item(0).getTextContent());
System.out.println();
Detalle Det;

Det = new Detalle(eleDet.getElementsByTagName("NroLinDet").item(0).getTextContent() +x, eleDet.getElementsByTagName("NmbItem").item(0).getTextContent() +x, eleDet.getElementsByTagName("MontoItem").item(0).getTextContent() +x);
datasource.addDetalle(Det);

}


}
// parametros.put("Nro_Fac", element.getElementsByTagName("Folio").item(0).getTextContent());


//JasperPrint jp = JasperFillManager.fillReport(jr,parametros, new JREmptyDataSource());
JasperPrint jp = JasperFillManager.fillReport(jr, null, datasource);
JasperViewer jv = new JasperViewer(jp);

jv.show();

//PDF
// docpdf.close();
//PDF

}

}


catch(IOException e) {
System.err.println("Error: "+ e.getMessage());
}
}



}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Kabuto
Val: 3.428
Oro
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Error en java

Publicado por Kabuto (1381 intervenciones) el 15/03/2023 17:57:43
Las rutas de los ficheros a los que accedes, delante de la letra de unidad hay que poner dos puntos :
1
File file = new File("C:\\Users\\czavala\\Documents\\NetBeansProjects\\JavaApplication1\\Fact.xml");
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar