Utilisation d'un programme de résolution de source pendant l'exécution

Si vous indiquez un programme de résolution de source au moment de l'exécution d'un exécutable, vous pouvez indiquer au processeur comment interpréter les URI référencés à cet instant.

Procédure

Indiquer un programme de résolution de source au moment de l'exécution d'un exécutable.

Ceci indique au processeur comment interpréter les URI référencés à cet instant, dans les appels aux fonctions fn:doc() ou fn:document() par exemple.

Le comportement par défaut pour résoudre la source consiste à interpréter les URI relatifs par rapport à l'URI de base de l'expression, de la requête ou de la feuille de style, quand cet URI de base est disponible, ou à les interpréter comme des chemins de fichier par rapport au répertoire de travail en cours, dans le cas contraire. Les URI absolus sont utilisés tels quels.

Pour modifier ce comportement, créez une classe Java™ pour implémenter l'interface XSourceResolver et enregistrez celle-ci dans le contexte dynamique avant d'exécuter l'expression, la requête ou la feuille de style.

L'exemple suivant illustre comment enregistrer un programme de résolution de source.
XFactory factory = XFactory.newInstance();

XStaticContext staticContext = factory.newStaticContext();

// Prepare the stylesheet
XSLTExecutable executable = factory.prepareXSLT(new StreamSource(stylesheetFile), staticContext);

XDynamicContext dynamicContext = factory.newDynamicContext();
// Register the source resolver with the dynamic context
XSourceResolver sourceResolver=new ASourceResolver(replacementBase);
dynamicContext.setSourceResolver(sourceResolver);

// Execute the XPath expression
XSequenceCursor cursor = executable.execute(new StreamSource(inputFile), dynamicContext);

Icône indiquant le type de rubrique Rubrique de tâche



Icône d'horodatage Dernière mise à jour: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=txml_resolvers_source_exec
Nom du fichier : txml_resolvers_source_exec.html