3 votes

Transformations XSLT incrémentielles/en continu ?

J'utilise normalement le support XSLT du JDK (JDK 7) pour les transformations XSLT. Récemment, je suis tombé sur un document XML assez volumineux, et l'application de transformations XSLT à celui-ci (même les plus basiques) entraîne une utilisation importante de la mémoire.

J'ai pris soin de faire tout mon traitement en streaming, mais il semble que le moteur XSLT du JDK (qui semble être un Xalan modifié) construise toujours un DOM en mémoire en premier. Ce n'est évidemment pas ce que je veux.

J'ai découvert que Xalan, qui est disponible séparément (2.7.1 de 2007 !), dispose d'une API pour effectuer des transformations incrémentielles. Donc, bien que cela semble fonctionner, je veux en fait que mon code s'exécute sur un JDK standard, sans demander à l'utilisateur de manipuler un dossier approuvé.

Quelle est la meilleure façon d'effectuer des transformations XSLT incrémentielles en Java afin que mon code soit compatible avec les installations JDK non modifiées/stock ?

mise à jour : Cette question récemment mise à jour est fortement liée : Quel est le processeur XSLT en continu basé sur Java le plus efficace ?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X