Tracepoints

www.altova.com Dieses Kapitel drucken Vorherige Seite Eine Ebene nach oben Nächste Seite

Startseite >  Benutzerhandbuch und Referenz > XSLT/XQuery Debugger und Profiler > XSLT und XQuery Debugger >

Tracepoints

Mit Hilfe des XSLT und XQuery Debugger können Sie Tracepoints in XSLT-Dokumenten definieren.

 

Mit Hilfe von Tracepoints können Sie Inhalt, der von einer Anweisung generiert wird, auffinden oder das Ergebnis eines  XPath-Ausdrucks an dem Punkt anzeigen, an dem der Tracepoint gesetzt wurde, ohne das XSLT Stylesheet z.B. durch Verwendung des xsl:message Elements zur Ausgabe von Debugging-Meldungen bearbeiten zu müssen.

 

Tracepoints werden durch eine strichlierte blaue Linie im Code des XSLT Stylesheet angezeigt (siehe Screenshot unten).

 

Anmerkung: Sie können innerhalb derselben Anweisung einen Tracepoint und einen Breakpoint setzen. Dies wird in Form einer blaurot gestrichelten Linie dargestellt (siehe Screenshot).

dbg_tracepoint

Der Debugger gibt die Ergebnisse der einzelnen Anweisungen, in denen ein Tracepoint gesetzt wurde, aus. Dieses Ergebnis wird im Fenster "Ablaufverfolgung" angezeigt. Sie können in einem XSLT Stylesheet beliebig viele Tracepoints setzen.

 

Anmerkung: Die Tracepoints bleiben in einem Dokument erhalten, bis es geschlossen wird.

 

Tracepoints in XSLT-Dokumenten

Sie können in einem XSLT Stylesheets in XSLT-Anweisungen und literalen Ergebnissen Tracepoints setzen.

 

Tracepoints in XML- und XQuery-Dokumenten

Sie können in XML- und XQuery-Dokumenten Tracepoints setzen.

 

Einfügen/Löschen von Tracepoints

So fügen Sie einen Tracepoint ein:

 

1.Platzieren Sie den Cursor an dem Punkt im XSLT-Dokument, an dem Sie den Tracepoint einfügen möchten. Sie können Tracepoints sowohl in der Text- als auch in der Grid-Ansicht setzen.
2.Wählen Sie eine der folgenden Methoden:

 

Wählen Sie XSL/XQuery | Tracepoint einfügen/löschen.
Drücken Sie Umschalt+F9.
Rechtsklicken Sie und wählen Sie den Befehl Tracepoint einfügen/löschen.

 

So löschen Sie einen Tracepoint:

 

1.Platzieren Sie den Cursor an die Stelle im XSLT-Dokument, die den Tracepoint enthält.
2.Wählen Sie eine der folgenden Methoden:

 

Wählen Sie XSL/XQuery | Tracepoint einfügen/löschen.
Drücken Sie Umschalt+F9.
Rechtsklicken Sie und wählen Sie den Befehl Tracepoint einfügen/löschen.

 

Alternativ dazu können Sie Tracepoints auch über das Dialogfeld "XSLT Breakpoints / Tracepoints" löschen:

 

1.Wählen Sie die Menüoption XSL/XQuery | Breakpoints/Tracepoints....
2.Klicken Sie auf den Tracepoint im Dialogfeld und klicken Sie auf Löschen.

xsl_break2

Mit Hilfe der Schaltfläche Alle löschen löschen Sie die Tracepoints aus dem Dialogfeld (und allen XSLT Stylesheets).

 

Definieren eines XPath als Tracepoint

Sie können einen XPath als Tracepoint definieren. Wenn Sie einen XPath als Tracepoint definieren, wird im Fenster "Ablaufverfolgung" anstelle des Inhalts, der durch die Anweisung, für die der Tracepoint gesetzt wurde, generiert wird, das Ergebnis der XPath-Auswertung angezeigt. Der XPath wird relativ zum Kontext-Node an der Stelle, an der der Tracepoint gesetzt wurde, ausgewertet.

 

So definieren Sie einen XPath als Tracepoint:

 

1.Wählen Sie die Menüoption XSL/XQuery | Breakpoints/Tracepoints.... Daraufhin wird das Dialogfeld "XSLT Breakpoints / Tracepoints" geöffnet,  in dem alle derzeit definierten Tracepoints in allen offenen XSLT Stylesheets angezeigt werden.
2.Geben Sie den XPath in die Spalte XPath in der Zeile für den entsprechenden Tracepoint ein.

 

Beispiel:

Im unten gezeigten Beispiel wird der Tracepoint so gesetzt, dass der Kontext Node "Person" ist. Das Element "Person" enthält ein Element "Shares". Wir möchten die Anzahl der Aktien (Shares), die jede Person hat, multipliziert mit 125 (dem Wert einer einzelnen Aktie) anzeigen.

xpath_result

Gehen Sie folgendermaßen vor:

 

1.Setzen Sie in der Zeile direkt nach der xsl:for-each-Anweisung, die das Element n1:Person auswählt (in der Abbildung oben in Zeile 555) einen Tracepoint.
2.Öffnen Sie das Dialogfeld "XSLT Breakpoints / Tracepoints" und geben Sie den XPath n1:Shares*125.00 für diesen Tracepoint ein.

breaktracedlg_xpath

3.Starten Sie den Debugger. Das Ergebnis des XPath, den Sie als Tracepoint eingegeben haben, wird im Fenster "Ablaufverfolgung" angezeigt.

 

Das Fenster "Ablaufverfolgung"

Wählen Sie den Befehl XSL/XQuery | Debugger starten, um den Debugger zu starten. Das Ergebnis der Anweisungen, für die Tracepoints gesetzt wurden, wird im Fenster Ablaufverfolgung (siehe Screenshot) angezeigt. Klicken Sie auf eine Zeile im Fenster "Ablaufverfolgung", um das vollständige Ergebnis der Anweisung auf der rechten Seite des Fensters (siehe Screenshot) anzuzeigen.

 

Anmerkung: Die Ergebnisse werden erst  dann im Fenster "Ablaufverfolgung" angezeigt, wenn diese Ablaufverfolgung-Anweisung fertig ausgeführt wurde.

trace_window

 

Aktivieren/Deaktivieren von Tracepoints:

Sie können Tracepoints, nachdem Sie sie eingefügt haben, deaktivieren, wenn diese übersprungen aber nicht gelöscht werden sollen. Bei Bedarf können Sie diese jederzeit wieder aktivieren.

 

So deaktivieren Sie einen Tracepoint:

 

1.Platzieren Sie den Cursor an die Stelle im XSLT Stylesheet, die den Tracepoint enthält.
2.Wählen Sie XSL/XQuery | Tracepoint aktivieren/deaktivieren (oder drücken Sie Strg+F9). Die Farbe des Tracepoints ändert sich von Blau in Grau, wodurch gekennzeichnet wird, dass er deaktiviert wurde.

 

Alternativ dazu können Sie einen Breakpoint über das Dialogfeld "XSLT Breakpoints / Tracepoints" deaktivieren:

 

1.Wählen Sie die Menüoption XSL/XQuery | Breakpoints/Tracepoints.... Daraufhin wird das Dialogfeld XSLT Breakpoints / Tracepoints geöffnet, in dem Sie die aktuell definierten Breakpoints in allen offenen XML-Quelldokumenten und XSLT Stylesheets sehen.

xsl_break2

2.Entfernen Sie das Häkchen für die Tracepoints, die Sie deaktivieren möchten und klicken Sie zur Bestätigung auf OK. Diese Tracepoints werden nun statt blau grau angezeigt, d.h. sie sind deaktiviert.

 

So aktivieren Sie einen Tracepoint:

 

1.Platzieren Sie den Cursor in den Node oder Ausdruck, der den Tracepoint enthält.
2.Wählen Sie XSL/XQuery | Tracepoint aktivieren/deaktivieren (oder drücken Sie Strg+F9). Der Tracepoint wird nun statt grau wieder blau angezeigt, was bedeutet, dass er aktiviert wurde.

 

Suchen eines bestimmten Tracepoint

So suchen Sie einen bestimmten Tracepoint:

 

1.Wählen Sie die Menüoption XSL/XQuery | Breakpoints/Tracepoints.... Daraufhin wird das Dialogfeld "XSLT Breakpoints / Tracepoints" angezeigt.
2.Klicken Sie auf den gewünschten Tracepoint in der Liste.
3.Klicken Sie auf die Schaltfläche Code bearbeiten. Das Dialogfeld "XSLT Breakpoints / Tracepoints" wird geschlossen und der Textcursor erscheint direkt vor dem Tracepoint in der Textansicht des XSLT-Dokuments. In der Enhanced Grid-Ansicht wird die Tabellenzelle, die den Breakpoint enthält, rot markiert.

 


© 2019 Altova GmbH