Bonjour,
J'ai quelques soucis pour transmettre correctement un noeud depuis un XSLT en appelant une fonction Java.
J'ai dans mon fichier XSLT un appel à une fonction java
java:maFonction($monNoeud)
Bref, rien de bien exceptionnel.
La fonction java récupère donc un Node, jusque là tout va bien, elle arrive à le lire sans soucis, je peux appeler toutes les méthodes sans problème (getNodeName, etc...), mais quand je veux récupérer un sous-noeud à partir du xpath (via un élément javax.xml.xpath.XPath), là ça me fait une "Erreur inconnue détectée dans XPath", message au combien explicite pour m'aider à résoudre le problème…
J'ai évidemment testé ma fonction en Java en l'appliquant exactement sur le même noeud, et ça passe nickel. Je suppose donc que l'appel via XSLT doit renvoyer un noeud erroné, mais je vois pas en quoi, vu que je peux accéder à ses pères/fils sans aucun soucis, je comprends pas pourquoi je peux pas exécuter de xpath dessus.
Si quelqu'un a une explication/solution, je suis donc preneur.
Je peux aussi contourner le problème si quelqu'un connaît un moyen en XSL-T de renvoyer des paramètres de retour dans un template appelé via un call-template, bref de faire des vrais fonctions. (à savoir que les fonctions EXSLT ne marchent pas dans mon cas, cf sujet posté il y a quelques semaines).
Merci d'avance.
Partager