Article View: fr.comp.text.xml
Article #8944[Q1] jaxp and xerces
From: Remy Sanlaville
Date: Sat, 30 Jun 2001 17:21
Date: Sat, 30 Jun 2001 17:21
134 lines
4425 bytes
4425 bytes
Bonjour,
J'aurai deux questions a vous soumettre.
Pour une question de lisibilite j'ai fait deux mails differents.
Donc ma premiere question est liee a un programme que j'ai realise
(Cf. code a la fin). Le but de ce code est de pouvoir sauvegarder des
informations dans un fichier XML.
* Lorsque j'utilise jaxp-1.1 (jaxp.jar et crimson.jar) tout fonctionne
bien.
-Fichier test.xml
-<?xml version="1.0" encoding="UTF-8" ?>
-
-<Racine>
-<Element1>Mon premier element</Element1><Element2>Mon deuxieme element
-</Element2></Racine>
* Par contre lorsque j'utilise xalan-j_2_1_0 (xalan.jar et xerces.jar)
ca ne
fonctionne plus.
-Fichier test.xml
-<?xml version="1.0" encoding="UTF-8" ?>
-
-[Racine: null]
Le probleme est que je ne peux pas utiliser jaxp car il n'implemente pas
completement
(ou correctement) XSLT. C'est pour cela que j'etais passe a Xalan.
Que faut-il que je fasse ?
Merci d'avance,
Remy
---------------------------------------------------------------------------------------------------------
package test;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Text;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.DocumentBuilder;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
import org.xml.sax.SAXParseException;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.PrintWriter;
import java.lang.Throwable;
public class SaveToXML
{
/**
* Serialisation: sauvegarde le document dans un fichier xml
* @param pathFile le chemin complet du fichier pour la sauvegarde
du document
*/
public SaveToXML(String pathFile)
{
Element node = null;
Document doc = null;
try
{
DocumentBuilderFactory docBuilderFactory =
DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docBuilderFactory.newDocumentBuilder();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
String headBody = "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n";
String body = headBody + "<Racine>\n";
body += "</Racine>\n";
baos.write(body.getBytes());
baos.close();
doc = docBuilder.parse(new InputSource (new
ByteArrayInputStream(baos.toByteArray())));
node = doc.getDocumentElement();
/**Element1***********/
Element elmt1 = doc.createElement("Element1");
Text text = doc.createTextNode("Mon premier element");
elmt1.appendChild(text);
node.appendChild(elmt1);
/**Element2**********/
Element elmt2 = doc.createElement("Element2");
text = doc.createTextNode("Mon deuxieme element");
elmt2.appendChild(text);
node.appendChild(elmt2);
FileOutputStream myFile = new FileOutputStream(pathFile);
PrintWriter pw = new PrintWriter(myFile);
System.out.println("Fichier " + pathFile);
pw.print(headBody);
System.out.println(headBody);
pw.print(doc.getDocumentElement());
System.out.println(doc.getDocumentElement());
pw.flush();
pw.close();
}
catch (Throwable t)
{
t.printStackTrace ();
}
}
/*-------------------------------------------\
| Main |
\-------------------------------------------*/
public static void main(String[] args)
{
SaveToXML appli = new SaveToXML("test.xml");
}
}
Technical Details
Message-ID:
<3B3E0AAB.5AE02B9F@imag.fr>Path:
arc1-ca.pugleaf.net!archiver1.google.com!newsfeed.google.com!newsfeed.stanford.edu!news.tele.dk!195.54.122.107!newsfeed1.bredband.com!bredband!uio.no!univ-lyon1.fr!news.ens-lyon.fr!news.imag.fr!not-for-mailShow Full Headers
Complete Article Headers
X-Google-Language: FRENCH,ASCII-7-bit X-Google-Thread: 114f60,447785753d442ee5,start X-Google-Attributes: gid114f60,public X-Google-ArrivalTime: 2001-06-30 10:23:23 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!newsfeed.google.com!newsfeed.stanford.edu!news.tele.dk!195.54.122.107!newsfeed1.bredband.com!bredband!uio.no!univ-lyon1.fr!news.ens-lyon.fr!news.imag.fr!not-for-mail From: Remy Sanlaville <Remy.Sanlaville@imag.fr> Newsgroups: fr.comp.text.xml Subject: [Q1] jaxp and xerces Date: Sat, 30 Jun 2001 19:21:48 +0200 Organization: IMAG Lines: 135 Message-ID: <3B3E0AAB.5AE02B9F@imag.fr> NNTP-Posting-Host: gropiron.imag.fr Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Trace: trompette.imag.fr 993921802 29243 129.88.103.13 (30 Jun 2001 17:23:22 GMT) X-Complaints-To: abuse@imag.fr NNTP-Posting-Date: 30 Jun 2001 17:23:22 GMT X-Mailer: Mozilla 4.73 [en] (Windows NT 5.0; I) X-Accept-Language: en