Quellen-Resolver während der Ausführung verwenden

Wenn Sie während der Ausführung eines ausführbaren Objekts einen Quellen-Resolver angeben, können Sie dem Prozessor mitteilen, wie die zu der Zeit referenzierten URIs interpretiert werden sollen.

Vorgehensweise

Geben Sie einen Quellen-Resolver an, wenn das ausführbare Objekt ausgeführt wird.

Damit teilen Sie dem Prozessor mit, wie die zu der Zeit referenzierten URIs interpretiert werden sollen, z. B. in Aufrufen der Funktion fn:doc() oder document().

Bei der Quellenauflösung werden bei Verfügbarkeit des Basis-URI standardmäßig die relativen URIs anhand des Basis-URIs des Ausdrucks, der Abfrage oder des Style-Sheets interpretiert. Ist der Basis-URI nicht verfügbar, werden die relativen URIs standardmäßig als relative Pfade bezogen auf das aktuelle Arbeitsverzeichnis interpretiert. Absolute URIs werden unverändert verwendet.

Sie können dieses Verhalten ändern, indem Sie eine Java™-Klasse schreiben, die das Interface XSourceResolver implementiert, und diese im XDynamicContext registrieren, bevor Sie den Ausdruck, die Abfrage oder das Style-Sheet ausführen.

Das folgende Basisbeispiel zeigt die Registrierung des Quellen-Resolvers.
XFactory factory = XFactory.newInstance();

XStaticContext staticContext = factory.newStaticContext();

// Style-Sheet vorbereiten
XSLTExecutable executable = factory.prepareXSLT(new StreamSource(stylesheetFile), staticContext);

XDynamicContext dynamicContext = factory.newDynamicContext();
// Quellen-Resolver im dynamischen Kontext registrieren
XSourceResolver sourceResolver=new ASourceResolver(replacementBase);
dynamicContext.setSourceResolver(sourceResolver);

// XPath-Ausdruck ausführen
XSequenceCursor cursor = executable.execute(new StreamSource(inputFile), dynamicContext);

Symbol, das den Typ des Artikels anzeigt. Taskartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=txml_resolvers_source_exec
Dateiname:txml_resolvers_source_exec.html