Enregistrer un Document dom dans un fichier xml
Bonjour tout le monde!
J'ai besoin d'une petite aide sur une exception que je n'arrive pas à résoudre.
En fait je souhaite créer un fichier xml à partir de données d'une classe java que j'ai créée.
Alors je crée bien le Document (org.w3c.dom.Document) que j'ai testé qui n'est donc pas vide. et je souhaite l'enregistrer dans un fichier xml.
le problème c'est que j'ai un NullPointerException lors de cet opération.
Voici le code de l'enregistrement dans le fichier xml:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
// création du fichier xml
File f = new File("C:\\Documents and Settings\\amda8464\\My Documents\\tomcat workspace\\Dashboard\\"+login+"_.xml");
// File baseDir = new File("/var/www/html/tomcat/sogescom/doc");
StreamResult result = new StreamResult(f);
DOMSource source = new DOMSource(document);
System.out.println("result: " +result.equals(null));
TransformerFactory transformerFactory = TransformerFactory
.newInstance();
javax.xml.transform.Transformer transformer = transformerFactory
.newTransformer();
//transformer.setOutputProperty(OutputKeys.METHOD, "xml");
transformer.setOutputProperty(OutputKeys.INDENT, "yes");
transformer
.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "no");
transformer.transform(source, result); |
et voici l'exception que j'obtiens :
Code:
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 26 27 28 29 30 31 32
| ERREUR : ''
javax.xml.transform.TransformerException: java.lang.NullPointerException
at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(Unknown Source)
at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(Unknown Source)
at dashboard.util.Profile.createXML(Profile.java:267)
at dashboard.test.Test.main(Test.java:43)
Caused by: java.lang.NullPointerException
at com.sun.org.apache.xml.internal.serializer.ToUnknownStream.characters(Unknown Source)
at com.sun.org.apache.xalan.internal.xsltc.trax.DOM2TO.parse(Unknown Source)
at com.sun.org.apache.xalan.internal.xsltc.trax.DOM2TO.parse(Unknown Source)
at com.sun.org.apache.xalan.internal.xsltc.trax.DOM2TO.parse(Unknown Source)
at com.sun.org.apache.xalan.internal.xsltc.trax.DOM2TO.parse(Unknown Source)
at com.sun.org.apache.xalan.internal.xsltc.trax.DOM2TO.parse(Unknown Source)
at com.sun.org.apache.xalan.internal.xsltc.trax.DOM2TO.parse(Unknown Source)
at com.sun.org.apache.xalan.internal.xsltc.trax.DOM2TO.parse(Unknown Source)
at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transformIdentity(Unknown Source)
... 4 more
---------
java.lang.NullPointerException
at com.sun.org.apache.xml.internal.serializer.ToUnknownStream.characters(Unknown Source)
at com.sun.org.apache.xalan.internal.xsltc.trax.DOM2TO.parse(Unknown Source)
at com.sun.org.apache.xalan.internal.xsltc.trax.DOM2TO.parse(Unknown Source)
at com.sun.org.apache.xalan.internal.xsltc.trax.DOM2TO.parse(Unknown Source)
at com.sun.org.apache.xalan.internal.xsltc.trax.DOM2TO.parse(Unknown Source)
at com.sun.org.apache.xalan.internal.xsltc.trax.DOM2TO.parse(Unknown Source)
at com.sun.org.apache.xalan.internal.xsltc.trax.DOM2TO.parse(Unknown Source)
at com.sun.org.apache.xalan.internal.xsltc.trax.DOM2TO.parse(Unknown Source)
at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transformIdentity(Unknown Source)
at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(Unknown Source)
at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(Unknown Source)
at dashboard.util.Profile.createXML(Profile.java:267)
at dashboard.test.Test.main(Test.java:43) |
Sachant que la ligne qui crée l'exception est celle-ci:
Code:
transformer.transform(source, result);
Merci beaucoup pour votre aide :oops: