Capture xsl: Nachrichtenausgabe in Java

8

Ich versuche, xsl: message in Java einzufangen, wenn ich meine Transformation anrufe. Unten ist ein Ausschnitt meines Codes.

%Vor%

Leider funktioniert das nicht.

Gibt es einen besseren Weg?

Vielen Dank im Voraus!

    
Sal Velazquez 14.01.2011, 20:16
quelle

1 Antwort

11

Wenn Sie Saxon verwenden, müssen Sie möglicherweise Setzen Sie den Nachrichtensender mit setMessageEmitter () .

Ссылка

  

public void setMessageEmitter(Receiver receiver)

     

Stellen Sie den Empfänger für die xsl: message-Ausgabe ein.

     

Aktuelle Versionen der JAXP-Schnittstelle geben an, dass standardmäßig die   Ausgabe von xsl:message wird an die   registrierter ErrorListener. Saxon tut es   Implementieren Sie diese Konvention nicht.   Stattdessen wird die Ausgabe an a gesendet   Standardnachrichtensender, der a   leicht angepasste Umsetzung von   die Standard-Saxon-Emitter-Schnittstelle.

     

Über diese Schnittstelle kann die Art und Weise geändert werden, in der Saxon-Ausgänge ausgegeben werden    xsl:message output.

Michael Kay hat erklärt, warum Saxon laut JAXP nicht xsl:message ausgibt Schnittstelle, und hat zwei Optionen vorgeschlagen, um die Ausgabe zu erhalten :

  

ErrorListener war etwas, das war   relativ spät in JAXP eingeführt   Bühne (eine von vielen bedauerlich   Gelegenheiten, bei denen die Spezifikation geändert wurde   einseitig, um den Xalan zu entsprechen   Implementierung), und entschied ich nicht zu   Implementieren Sie diese Änderung als Standard   Verhalten, weil es gewesen wäre   störend für bestehende Anwendungen .

     

In Saxon ist xsl:message output   gerichtet auf einen Empfänger, den Sie können   Nominiere zum Transformer:

     

((net.sf.saxon.Controller)transformer).setMessageEmitter(....)

     

Wenn Sie dem JAXP-Modell folgen möchten   Senden der Ausgabe an die   ErrorListener, Sie können ein   Empfänger, der dies tut:

     

((net.sf.saxon.Controller)transformer).setMessageEmitter(new net.sf.saxon.event.MessageWarner())

    
Mads Hansen 15.01.2011, 13:13
quelle

Tags und Links