ich habe eine Frage bitte …
ich habe eine xml datei und dazu eine xsl datei. mit hilfe des XALAN Transformer kann ich aus xml + xsl eine html datei erstellen, z.B. so sieht der command im CMD aus :
Danach wollte ich wieder eine neue HTMLseite erstellen, doch dieses mal meckert der XALAN Transformer.
Fehlermeldung:
XSL WARNING: Fatal Error at (file test.xsl, line 73, column 161) Expected entity name for reference, line 73, offset 161
Ich habe es herausgefunden, dass er das Zeichen „&“ nicht mag.
Es steht in „…daten/test.xml&sheet=daten/my.xsl“
Ich brauche aber dieses Zeichen genau an der richtigen Stelle.
Ich habe es auch mit einem anderen Zeichen probiert, und es klappt wunderbar, alle anderen Zeichen funktionieren, nur „&“ nicht.
Kann jemand mir da helfen bitte ?
Vielen Dank !
Loren
PS: übrigens den XALAN Transformer habe ich bei http://xml.apache.org/ heruntergeladen !
es hat leider nicht funktioniert ((
Es ist nämlich ein Link, der ich im XSL definiere.
Dieser Link enthält 2 Parametern, die an einem Servlet übergebe.
da es in der Link ein Zeichen „&“ gibt, will der XalanTransformer nicht akzeptieren beim TRansformieren. Er meldet Fehler, irgendetwas mit entity code reference … (alle anderen zeichen funktioniert) …
also, habe ich anstatt „&“ %26 eingegeben und transformiert, es kommt zwar kein fehler, aber in der html-datei (test.html) soll dann richtig angezeigt werden „&“, aber nein, es steht genau wie in der xsl-datei, nämlich noch %26 , er wandelt also nicht um !
Was kann ich da noch machen bitte ? Kannst du mir helfen ? ich weiss kein rat mehr (
Das ist ja Absicht, das %26 dort steht. Nach der Definition
der URI (uniform resource identifier) ist das auch zulässig.
Das heisst der Link funktioniert!
naja, irgendwie funktioniert oder versteht der Servlet nicht.
Diese Parameterübergabe an den Servet … Convert?quelle=daten/hallo.xml%26sheet=daten/hallo.xsl
…erwartet der Servet ein „&“ Zeichen zwischen daten/hallo.xml&sheet=daten/hallo.xsl … und aus dem Link steht %26 und kein „&“ Zeichen, deswegen meckert der Servlet mit der Meldung „No style parameter supplied“ …
… vielleicht noch eine andere Möglichkeit ?
Danke dir nochmals im voraus !
Loren
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Danach wollte ich wieder eine neue HTMLseite erstellen, doch
dieses mal meckert der XALAN Transformer.
Fehlermeldung:
XSL WARNING: Fatal Error at (file test.xsl, line 73, column
161) Expected entity name for reference, line 73,
offset 161
Das ‚&‘ Zeichen leitet in XML eine Entity ein, und muss daher selbst über eine Entity codiert werden, wie die Umlaute in HTML-Seiten. Die Entity für ‚&‘ ist & amp; (Kein Leerzeichen zwischen & und amp, aber wenn ich’s weglasse wird’s hier auch zum normalen Ampersand konvertiert)
Damit sollte es eigentlich funktionieren.
Danach wollte ich wieder eine neue HTMLseite erstellen, doch
dieses mal meckert der XALAN Transformer.
Fehlermeldung:
XSL WARNING: Fatal Error at (file test.xsl, line 73, column
161) Expected entity name for reference, line 73,
offset 161
Das ‚&‘ Zeichen leitet in XML eine Entity ein, und muss daher
selbst über eine Entity codiert werden, wie die Umlaute in
HTML-Seiten. Die Entity für ‚&‘ ist & amp; (Kein Leerzeichen
zwischen & und amp, aber wenn ich’s weglasse wird’s hier auch
zum normalen Ampersand konvertiert)
Damit sollte es eigentlich funktionieren.