Bonjour,
j'essaie de convertir un xml en pdf avec l'api itext,
la methode qui me permet d'obtenir le fichier xml est la suivante:
la methode de conversion du xml vers pdf:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 protected static void buildRow(ReportBuilder reportBuilder) throws WavesetException { //UserRow userRow = (UserRow) row; //pour générer le xml reportBuilder.startRow(); reportBuilder.addCol("un"); reportBuilder.addCol("deux"); reportBuilder.addCol("troix"); reportBuilder.addCol("quatre"); reportBuilder.endRow(); System.out.println("sa marche???:"+reportBuilder.getReport()); try{ FileOutputStream xmlFile = new FileOutputStream("xmlFile.xml"); //création d'un "flux objet" avec le flux fichier ObjectOutputStream oos= new ObjectOutputStream(xmlFile); oos.writeObject(reportBuilder.getReport()); // on vide le tampon oos.flush(); oos.close(); xmlFile.close(); } catch(IOException e){ System.out.println(e); } }
j'obtient l'exception suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 protected static void xmlToPdf () throws DocumentException, ParserConfigurationException, SAXException, IOException{ Document documentA = new Document(); PdfWriter.getInstance(documentA, new FileOutputStream("listComptes.pdf")); documentA.open(); //PdfWriter.getInstance(documentB, new FileOutputStream("Chap0704b.pdf")); /SAXParserFactory.newInstance().newSAXParser(); parser.parse("xmlFile.xml", new SAXiTextHandler(documentA)); //documentA.close(); }
merci pour votre aide
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 Exception in thread "main" com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 1 of 1-byte UTF-8 sequence. at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.invalidByte(UTF8Reader.java:713) at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.read(UTF8Reader.java:586) at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.load(XMLEntityScanner.java:1740) at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.skipString(XMLEntityScanner.java:1437) at com.sun.org.apache.xerces.internal.impl.XMLVersionDetector.determineDocVersion(XMLVersionDetector.java:191) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:798) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:764) at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:148) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1242) at javax.xml.parsers.SAXParser.parse(SAXParser.java:375) at javax.xml.parsers.SAXParser.parse(SAXParser.java:255) at accesGicaTest.xmlToPdf(accesGicaTest.java:103) at accesGicaTest.main(accesGicaTest.java:139)
Partager