XSLT in Java verwenden

Status
Nicht offen für weitere Antworten.

Pasche

Bekanntes Mitglied
Ich habe mich ein wenig in XSLT eingearbeitet. Dabei habe ich ein Quell-XML-File und ein XSLT-Stylesheet. Jage ich beides durdh den XSLT Prozessor, erhalte ich ein schön formatiertes HTML-File :)

Jetzt lese ich aber das XML-File aus einer Datenbank aus, so dass ich das komplette File in einem String habe. Wir kann ich jetzt ein XLST-Stylesheet auf diesen String anwenden?
 

Bleiglanz

Gesperrter Benutzer
Code:
      StreamSource stylesource = 
        new StreamSource(stylesheet); 
      Transformer transformer =
        Factory.newTransformer(stylesource);
       ...usw. usf
lad dir den aktuellen xalan runter und schau in den ordner examples
 

Pasche

Bekanntes Mitglied
Ich habe mir das Ganze jetzt mal angeschaut und folgendes versucht. Das Ganze wird in einer JSP aufgerufen, der ein Suchbegriff übergeben wird.

Code:
<%@ page import="org.xmldb.api.base.*" %>
<%@ page import="org.xmldb.api.modules.*" %>
<%@ page import="org.xmldb.api.*" %>
<%@ page import="org.w3c.dom.*" %>
<%@ page import="javax.xml.transform.dom.*" %>
<%@ page import="javax.xml.transform.stream.*" %>

String suche = request.getParameter("suchbegriff");
Collection col = null;
      try {
         String driver = "org.apache.xindice.client.xmldb.DatabaseImpl";
         Class c = Class.forName(driver);

         Database database = (Database) c.newInstance();
         DatabaseManager.registerDatabase(database);

         col = DatabaseManager.getCollection("xmldb:xindice://83.137.103.78:8080/db/wikipedia");

         String xpath = "/output/ART/A0[SSTW='" + suche + "']";
         DOMSource src = null;
         
         XPathQueryService service =
            (XPathQueryService) col.getService("XPathQueryService", "1.0");
         ResourceSet resultSet = service.query(xpath);
         ResourceIterator results = resultSet.getIterator();
         while (results.hasMoreResources()) {
            XMLResource res = (XMLResource) results.nextResource();
            Node node = res.getContentAsDOM();   
            src = new DOMSource(node);         
         }
         
         
         
         // Generate a Transformer.
				 javax.xml.transform.Transformer transformer = Factory.newTransformer
                  (new javax.xml.transform.stream.StreamSource("foo.xsl"));
						
				 // Create an empy DOMResult object for the output.
				 javax.xml.transform.dom.DOMResult domResult = new javax.xml.transform.dom.DOMResult();

				 // Perform the transformation.
				 transformer.transform(new javax.xml.transform.dom.DOMSource(src));

				 // Now you can get the output Node from the DOMResult.
				 org.w3c.dom.Node output = domResult.getNode();
				 Result res = new StreamResult(output);

				 out.println(res.getOutputStream());
      }
      catch (XMLDBException e) {
         System.err.println("XML:DB Exception occurred " + e.errorCode);
      }
      finally {
         if (col != null) {
            col.close();
         }
      }

Probleme hab ich jetzt noch an zwei Stellen. Zum einen wird Factory nicht gefunden, zum anderen macht das letzte ResultSet Probleme. Soll heißen, dass sich die Seite nicht kompilieren lässt.

Generated servlet error:
[javac] Since fork is true, ignoring compiler setting.
[javac] Compiling 1 source file
[javac] Since fork is true, ignoring compiler setting.
[javac] D:\tomcat\work\Standalone\localhost\weber\ergebnis_jsp.java:127: cannot resolve symbol
[javac] symbol : variable Factory
[javac] location: class org.apache.jsp.ergebnis_jsp
[javac] javax.xml.transform.Transformer transformer = Factory.newTransformer
[javac] ^
[javac] D:\tomcat\work\Standalone\localhost\weber\ergebnis_jsp.java:134: cannot resolve symbol
[javac] symbol : constructor DOMSource (javax.xml.transform.dom.DOMSource)
[javac] location: class javax.xml.transform.dom.DOMSource
[javac] transformer.transform(new javax.xml.transform.dom.DOMSource(src));
[javac] ^
[javac] D:\tomcat\work\Standalone\localhost\weber\ergebnis_jsp.java:138: cannot resolve symbol
[javac] symbol : class ResultSet
[javac] location: class org.apache.jsp.ergebnis_jsp
[javac] ResultSet res = new StreamResult(output);
[javac] ^
[javac] D:\tomcat\work\Standalone\localhost\weber\ergebnis_jsp.java:138: cannot resolve symbol
[javac] symbol : constructor StreamResult (org.w3c.dom.Node)
[javac] location: class javax.xml.transform.stream.StreamResult
[javac] ResultSet res = new StreamResult(output);
[javac] ^
[javac] 4 errors
 

KSG9|sebastian

Top Contributor
javax.xml.transform.Transformer transformer = Factory.newTransformer
(new javax.xml.transform.stream.StreamSource("foo.xsl"));



Nennt sich das Ding nicht TransformerFactory ?



---


javac] D:\tomcat\work\Standalone\localhost\weber\ergebnis_jsp.java:134: cannot resolve symbol
[javac] symbol : constructor DOMSource (javax.xml.transform.dom.DOMSource)
[javac] location: class javax.xml.transform.dom.DOMSource
[javac] transformer.transform(new javax.xml.transform.dom.DOMSource(src));
[javac] ^


Ein Blick in die API zeigt, dass es den Konstruktor DOMSource(DOMSource arg0) nicht gibt...


http://java.sun.com/j2se/1.4.2/docs/api/javax/xml/transform/dom/DOMSource.html
 

Pasche

Bekanntes Mitglied
[javac] D:\tomcat\work\Standalone\localhost\weber\ergebnis_jsp.java:134: cannot resolve symbol
[javac] symbol : constructor DOMSource (javax.xml.transform.dom.DOMSource)
[javac] location: class javax.xml.transform.dom.DOMSource
[javac] transformer.transform(new javax.xml.transform.dom.DOMSource(src));
[javac] ^


Ein Blick in die API zeigt, dass es den Konstruktor DOMSource(DOMSource arg0) nicht gibt...


http://java.sun.com/j2se/1.4.2/docs/api/javax/xml/transform/dom/DOMSource.html

Und wieso steht er auf der Seite?

Constructor Summary
DOMSource()
Zero-argument default constructor.
DOMSource(Node n)
Create a new input source with a DOM node.
DOMSource(Node node, String systemID)
Create a new input source with a DOM node, and with the system ID also passed in as the base URI.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
slawaweis Problem mit XSLT (wahrscheinlich ein Bug in Java 6) XML & JSON 16
M Java und XSLT: Performanz-Problem XML & JSON 5
A XSLT oder Java? / XML-Tools XML & JSON 2
W xslt zum Rausfiltern von Feldern in XML wenn variable gleich false XML & JSON 7
W xslt zum Entfernen von unnoetigen Nullkommastellen bei double und float XML & JSON 26
K XML und XSL bzw XSLT XML & JSON 1
R String in XSLT teilen XML & JSON 3
R Script in XSLT einbinden XML & JSON 2
K aus 2XML mache 1XML mit XSLT XML & JSON 4
G xslt Attributwerte von bestimmten Elementen XML & JSON 2
S Xslt Problem XML & JSON 2
K docBook XSLT: HTML Code Snippet in Erzeugte HTML Dokument einfügen XML & JSON 9
T XML + XSLT to PDF mit FOP-Engine XML & JSON 14
E FOP - XSLT Transformierung mit Parametern XML & JSON 4
R '&' Zeichen im XSLT XML & JSON 4
S byte array in xslt umwandeln XML & JSON 7
B XSLT collections ? XML & JSON 2
Raidri JSP Parameter an XSLT übergeben XML & JSON 2
K XSLT Frage XML & JSON 4
S Guter XSLT - Transformator XML & JSON 2
G XSLT-Stylesheet XML & JSON 2
N jdom - xslt-Verweis in .xml einfügen XML & JSON 3
B anzeigen des XML+ XSLT Ergebnisses XML & JSON 21
N XML zu XSLT XML & JSON 2
N XSLT Testmethoden XML & JSON 2
cybermat Ergebnis einer XSLT-Tansformation als Rückgabewert erhalten XML & JSON 4
A Wie hängen SAX/DOM mit XSLT zusammen? XML & JSON 3
Noar XSLT - Element-Wrapping XML & JSON 2
byte XSLT Transformation "ohne Server" XML & JSON 6
byte XSLT Editor ? XML & JSON 7
T XSLT Parameter übergeben und Ergebnis empfangen XML & JSON 1
W jaxws jaxb wsdl Java-Klassen generieren und binding.xml verwenden XML & JSON 1
iman XML Attribute mit JAVA einlesen mit Spring Batch XML & JSON 0
T Tags in XML Datei mit Java erstellen XML & JSON 3
E JAXB und java.nio.file.Path XML & JSON 4
B XML-Daten mit SAX Parser verarbeiten in Java XML & JSON 4
S Java REST Client + Json XML & JSON 8
L Lässt sich folgendes so oder so ähnlich mit Java und XML umsetzen XML & JSON 3
K XML Datei erstellen und Daten daraus in Java auslesen XML & JSON 6
L login - Java IOException jaas.config File or Directory not present XML & JSON 1
M Text eines Elements in XML Datei mit JAVA bearbeiten und kompletten Element-Zweig hinzufügen XML & JSON 16
J JSON zu Java mit der GSON Google API XML & JSON 0
B JAXB - java.util.Locale does not have a no-arg default constructor XML & JSON 2
E JAVA simple.JSONObject cannot be cast to simple.JSONArray XML & JSON 9
P Einheiten in Java XML & JSON 4
T Visualisierung von XML Dateien in einer Java SwingGui XML & JSON 11
A WSDL und Java XML & JSON 5
A XMLRPC für Java XML & JSON 3
S XML auf Java Klassen Mappen XML & JSON 10
N Java XML schreiben funktioniert nicht XML & JSON 1
B aus xsd Java Klassen generieren XML & JSON 3
MiMa Mehrfachvariablen in Java durch XML XML & JSON 4
Q XML-File als Objekt in Java XML & JSON 6
Q Konvertierung von json zum Java Objekt nach vorgegebenem Schema XML & JSON 3
AMStyles XPATH Befehl SVG Java XML & JSON 2
S Wie aktualisiert man den Java-Kode mit FOP1.0? XML & JSON 1
L XSL: Aufruf Java-class XML & JSON 11
N Java Code aus XML Datei generieren XML & JSON 8
GUI-Programmer java.io.File aus .jar beziehen XML & JSON 6
A Unterschiedliche Datenstruktur XML <-> Java mappen XML & JSON 9
R XSD aus Java Klassen erzeugen?? XML & JSON 2
N xsd pattern in java einlesen XML & JSON 6
M java.lang.RuntimeException: Failed to parse document XML & JSON 4
F SOAP in Java XML & JSON 6
Q Atom/RSS-Feed lesen - per XSD zu Java-Code XML & JSON 4
S JAXB 2 und Java Annotationen/Interfaces generieren XML & JSON 3
N Google Wetter XML (nur current_condition) auslesen mit Java XML & JSON 15
F Einlesen von JDBC connection in Java von XML XML & JSON 4
D xsd->java mit Eclipse?! oder wie? XML & JSON 27
M Probleme mit XPath bei Java XML & JSON 5
_dp Java XML Parse error: findet end-tags nicht XML & JSON 10
V JAXB schema 2 java XML & JSON 3
S XJC --> Java-Objects compile Problem XML & JSON 4
G Mit JSON Java und C# verbinden XML & JSON 4
K XML Datei in ein Java package „einbinden" XML & JSON 3
H Java - XML - Rekursion - Verwirrung XML & JSON 6
F XML Datei in Java einlesen XML & JSON 4
J XSD > XML > Java XML & JSON 7
F XML mit Java XML & JSON 2
algorismi SVG Datein mit Batik in Java reinladen XML & JSON 3
S Java - Klassen erzeugen aus xsd bzw. wsdl XML & JSON 3
D ID's aus XML Datei rauslesen und in Java ausgeben XML & JSON 7
N value Wert einer XML Datei mit JAVA bearbeiten XML & JSON 21
Mike90 -xlsx Dateien in Java lesen XML & JSON 3
T StAX / SAX => Wie XML Datenstruktur in Java abbilden? XML & JSON 2
H XML plattformunabhängig/Open Source für Java XML & JSON 4
C Java-Imports bei Jaxb XML & JSON 8
Fadi .classpath(XML) mit Java lesen XML & JSON 2
M Frage zu Erklärung im Online book "Java ist auch eine I XML & JSON 4
M Problem mit FOP in Java Programm XML & JSON 2
H Fop / Java /Fonts XML & JSON 6
H XSL Aufruf via Java mit neuen Fonts XML & JSON 9
T Java Klasse für gegebenes XML erstellen XML & JSON 4
M Xlink in Java-Objekt umwandeln XML & JSON 9
S Jdom+java webstart XML & JSON 4
P Einstieg in XML mit Java XML & JSON 3
G MS-Word Dokument mit Java erstellen XML & JSON 2
N AXIOM mit Java 1.4 XML & JSON 4
J DTD in Java integrieren? XML & JSON 3
L XML Datei in Java angeben Pfad? XML & JSON 3

Ähnliche Java Themen

Neue Themen


Oben