Bonjour tout le monde,
Voilà suite au dernier sujet que j'ai postulé qui consiste à transformer un xml en pdf, je souhaiterai maintenant transformer un xml en html.
J'ai essayé avec ça, mais j'ai une petite erreur que j'arrive pas à trouver un explication.
Voilà le premier code
Le deuxième code (deuxième proposition -> enfin de compte c'est pas très different du premier mais c'est juste pour vous dire que j'ai la meme erreur avec ses deux codes.)
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80 import java.io.File; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.transform.OutputKeys; import javax.xml.transform.Result; import javax.xml.transform.Source; import javax.xml.transform.Transformer; import javax.xml.transform.TransformerException; import javax.xml.transform.TransformerFactory; import javax.xml.transform.dom.DOMSource; import javax.xml.transform.stream.StreamResult; import javax.xml.transform.stream.StreamSource; import org.w3c.dom.Document; public class XSLTRANSFORM { public static void creerHTML(String xml, String xsl, String html) throws Exception { // Création de la source DOM DocumentBuilderFactory Factory = DocumentBuilderFactory.newInstance(); // creation d'un constructeur DocumentBuilder constructeur = Factory.newDocumentBuilder(); File fileXml = new File(xml); Document document = constructeur.parse(fileXml); Source source = new DOMSource(document); // Création du fichier de sortie File fileHtml = new File(html); Result resultat = new StreamResult(fileHtml); // Configuration du transformer TransformerFactory fabriqueT = TransformerFactory.newInstance(); StreamSource stylesource = new StreamSource(xsl); Transformer transformer = fabriqueT.newTransformer(stylesource); transformer.setOutputProperty(OutputKeys.METHOD, "html"); // Transformation transformer.transform(source, resultat); } public static void main(String [] arg) throws TransformerException{ // Setup directories File baseDir = new File("C:/CreationHTML/"); File outDir = new File(baseDir, "out"); outDir.mkdirs(); //Setup input and output files File xmlFile = new File(baseDir, "Annuaire.xml"); File xsltFile = new File(baseDir, "Annuaire.xsl"); File htmlFile = new File(outDir, "Annuaire.html"); javax.xml.transform.Source xmlSource = new javax.xml.transform.stream.StreamSource(xmlFile); javax.xml.transform.Source xsltSource = new javax.xml.transform.stream.StreamSource(xsltFile); javax.xml.transform.Result result = new javax.xml.transform.stream.StreamResult(htmlFile); javax.xml.transform.TransformerFactory transFact = javax.xml.transform.TransformerFactory.newInstance(); javax.xml.transform.Transformer trans = transFact.newTransformer(xsltSource); trans.transform(xmlSource, result); } }
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40 import javax.xml.parsers.*; import org.w3c.dom.*; import javax.xml.transform.*; import javax.xml.transform.dom.*; import javax.xml.transform.stream.*; import java.io.*; public class CreationHTML{ public static void creerHTML(String xml, String xsl, String html) throws Exception { // Création de la source DOM DocumentBuilderFactory Factory = DocumentBuilderFactory.newInstance(); // creation d'un constructeur DocumentBuilder constructeur = Factory.newDocumentBuilder(); File fileXml = new File(xml); Document document = constructeur.parse(fileXml); Source source = new DOMSource(document); // Création du fichier de sortie File fileHtml = new File(html); Result resultat = new StreamResult(fileHtml); // Configuration du transformer TransformerFactory fabriqueT = TransformerFactory.newInstance(); StreamSource stylesource = new StreamSource(xsl); Transformer transformer = fabriqueT.newTransformer(stylesource); transformer.setOutputProperty(OutputKeys.METHOD, "html"); // Transformation transformer.transform(source, resultat); } public static void main(String[] args){ try{ creerHTML("c:/CreationHTML/Annuaire.xml", "c:/CreationHTML/Annuaire.xsl", "c:/CreationHTML/Annuaire.html"); }catch(Exception e){e.printStackTrace();} } }
Partager