Thomas J.S.: dynamische xpath-Anweisung

Beitrag lesen

Hallo,

danke für die schnelle Antwort. Genauso wie Du es beschrieben hast, hatte ich es probiert.

Leider ist das Problem, dass der Wert des Parameters zurückgegeben wird (also: //xyz[bedingung='001']/cvb . Ich vermute stark, dass es an dem benutzten XSLT-Prozessor des SAP-Umfelds liegt. In einer anderen Java-basierten Umgebung klappt es nämlich so, wie Du es beschrieben hast.

Nun, da kann ich leider wenig weiterhelfen. Es hängt wirklich dann vom XSLT-Prozessor ab. Bzw. ich weiss nicht wie du diesen aufrufst und wie der Name (und Pfad) XML-Datei und der Parameter und dessen Wert den Prozessor übergeben wird.

Komisch ist nur, dass bei der statischen Eingabe [ <xsl:value-of select="//xyz[bedingung='001']/cvb" />] die Xpath-Anweisung korrekt ausgeführt wird ....

Der Prozessor konvertiert den Parameterwert schienbar zu einem String und dann wird im value-of dies auch als String ausgegeben. In anderen Fall wird beim valu-of der Wert vom "select" normal als XPAth-ausdruck gewertet.

Vielleicht hilft wenn du folgendes versuchst bei der Defninition des Parameters:
<xsl:param name="myXPath" select="/.." />, damit soll ein leerer Knotenmenge als default Wert für den Parameter selctiert werden. Eventuell wertet dann der Prozessor andere Angaben richtig.

Grüße
Thomas

--
Surftip: kennen Sie schon Pipolino's Clowntheater?
http://www.clowntheater-pipolino.net/