Hallo,
Ich habe gerade angefangen mich etwas mit XML und Java zu beschäftigen. Nun suche ich schon fast verzweifelt eine Lösung für das folgende Problem...
Hintergrund ist, dass ich eine XML Datei, die lokal auf der Festplatte liegt mit ein wenig JavaScript mit unterschiedlichen XSL-Stylesheets
ausgegeben werden kann. Alles soll lokal auf meiner Festplatte statt finden. Verwendet wird IE6 (muss, da Firmen-PC).
Nun habe ich als Testobjekt einigen Code im Internet gefunden, der auf der website von der der Code stammt als Demo auch funktioniert - bei mir leider nicht. Das Script läuft bis zum xml.transformNode, dann bricht es ab mit Fehler Code 0. und der Meldung 'Das Stylesheet enthält kein Dokumentelement'. Ich habe schon diverse Foren durchsucht aber keine Lösung gefunden.
Woran könnte es liegen?
Auch wenn man eine interne DTD verwendet ändert sich nichts.
Ich wäre für Hinweise wirklich sehr dankbar.
Gruss,
Günter
die verwendeten dateien...
catalog.html
Alles anzeigen
catalog.xml
Alles anzeigen
catalog.xls
Alles anzeigen
Ich habe gerade angefangen mich etwas mit XML und Java zu beschäftigen. Nun suche ich schon fast verzweifelt eine Lösung für das folgende Problem...
Hintergrund ist, dass ich eine XML Datei, die lokal auf der Festplatte liegt mit ein wenig JavaScript mit unterschiedlichen XSL-Stylesheets
ausgegeben werden kann. Alles soll lokal auf meiner Festplatte statt finden. Verwendet wird IE6 (muss, da Firmen-PC).
Nun habe ich als Testobjekt einigen Code im Internet gefunden, der auf der website von der der Code stammt als Demo auch funktioniert - bei mir leider nicht. Das Script läuft bis zum xml.transformNode, dann bricht es ab mit Fehler Code 0. und der Meldung 'Das Stylesheet enthält kein Dokumentelement'. Ich habe schon diverse Foren durchsucht aber keine Lösung gefunden.
Woran könnte es liegen?
Auch wenn man eine interne DTD verwendet ändert sich nichts.
Ich wäre für Hinweise wirklich sehr dankbar.
Gruss,
Günter
die verwendeten dateien...
catalog.html
Quellcode
- <html>
- <head>
- <script>
- function loadXMLDoc(fname)
- {
- var xmlDoc;
- xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
- xmlDoc.async=false;
- xmlDoc.load(fname);
- return(xmlDoc);
- }
- function displayResult()
- {
- xml=loadXMLDoc("catalog.xml");
- xsl=loadXMLDoc("catalog.xsl");
- ex=xml.transformNode(xsl);
- document.getElementById("example").innerHTML=ex;
- xsltProcessor=new XSLTProcessor();
- xsltProcessor.importStylesheet(xsl);
- resultDocument = xsltProcessor.transformToFragment(xml,document);
- document.getElementById("example").appendChild(resultDocument);
- }
- </script>
- </head>
- <body id="example" onLoad="displayResult()">
- </body>
- </html>
catalog.xml
Quellcode
- <?xml version="1.0" standalone="yes"?>
- <catalog>
- <cd>
- <title>Empire Burlesque</title>
- <artist>Bob Dylan</artist>
- <country>USA</country>
- <company>Columbia</company>
- <price>10.90</price>
- <year>1985</year>
- </cd>
- <cd>
- <title>Test</title>
- <artist>Bob Test</artist>
- <country>Testland</country>
- <company>Testcompany</company>
- <price>9.99</price>
- <year>1999</year>
- </cd>
- </catalog>
catalog.xls
Quellcode
- <?xml version="1.0" encoding="ISO-8859-1"?>
- <xsl:stylesheet>
- <xsl:template match="/">
- <html>
- <body>
- <h2>My CD Collection</h2>
- <table border="1">
- <tr bgcolor="#9acd32">
- <th align="left">Title</th>
- <th align="left">Artist</th>
- </tr>
- <xsl:for-each select="catalog/cd">
- <tr>
- <td><xsl:value-of select="title" /></td>
- <td><xsl:value-of select="artist" /></td>
- </tr>
- </xsl:for-each>
- </table>
- </body>
- </html>
- </xsl:template>
- </xsl:stylesheet>