Traitement XSLT avec Java? [fermé]


Fermé.Cette question ne répond pas aux directives Stack Overflow. Il n'accepte pas actuellement de réponses.

Vous voulez améliorer cette question? Mettre à jour le question donc c'est sur le sujet pour le débordement de pile.

Fermé il y a 3 mois.

Améliorer cette question

Comment transformer XML avec le processeur XSLT en Java en utilisant le JDK?

Author: rogerdpack, 2011-01-05

4 answers

Voici un exemple d'utilisation de l'api java pour transformer, comme l'a dit @Raedwald:

import javax.xml.transform.*;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource;
import java.io.File;
import java.io.IOException;
import java.net.URISyntaxException;

public class TestMain {
    public static void main(String[] args) throws IOException, URISyntaxException, TransformerException {
        TransformerFactory factory = TransformerFactory.newInstance();
        Source xslt = new StreamSource(new File("transform.xslt"));
        Transformer transformer = factory.newTransformer(xslt);

        Source text = new StreamSource(new File("input.xml"));
        transformer.transform(text, new StreamResult(new File("output.xml")));
    }
}

L'entrée peut également provenir d'une chaîne ou d'un DOMSource, la sortie peut être vers un DOMSource etc.

 154
Author: Askar Kalykov, 2019-02-08 17:42:18

Je suis nouveau sur xslt. Quelqu'un peut-il me guider comment traiter xslt avec java?

Cela dépend du processeur XSLT basé sur Java que vous utilisez. Chaque processeur XSLT a sa propre API.

Par exemple, Saxon 6.5.5 (pour XSLT 1.0) et Saxon 9.1.07 (pour XSLT 2.0) sont écrits en Java. La documentation est à http://www.saxonica.com/documentation/documentation.xml

Presque tous les processeurs XSLT ont une ligne de commande utilitaire, qui ne nécessite pas d'écrire un programme pour effectuer une transformation XSLT.

, Par exemple, voici: comment faire pour démarrer un Saxon 9.x transformation à partir de la ligne de commande.

Voici comment je l'utilise toujours Saxon à partir de la ligne de commande:

java -Xms2048M  -Xmx10000M  -jar  
     C:\xml\Parsers\Saxon\Ver.9.1.0.7\J\saxon9.jar 
    -t  -repeat:1  -o %out%  %xml%  %xsl%  %param[ name=\"value\"]%

%out% est le nom du fichier de sortie, %xml% est le fichier xml, %xsl% est le fichier xslt primaire et %param[ name=\"value\"]% est une liste de noms-valeurs de paramètres externes (j'ai presque toujours laissez ce vide).

 9
Author: Dimitre Novatchev, 2012-09-30 14:28:42

La bibliothèque standard Java fournit une interface de transformation (XSLT) pour l'analyse XML. Voir la documentation de l'API pour les classes javax.xml.transform.Transformer et javax.xml.transform.TransformerFactory.

 8
Author: Raedwald, 2011-01-05 15:58:12

JAXP fournit une manière indépendante de l'implémentation de travailler avec les transformations XSLT. Voici le tutoriel pour vous aider à démarrer. Si vous travaillez avec d'énormes XSLT et / ou avec plusieurs XSLT, il existe également une option de mise en cache des modèles XSLT analysés pour des raisons de performances. Cet article explique comment mettre en cache xslt

 5
Author: Aravind Yarram, 2011-01-05 13:47:05