Bonjour à tous,

Après de nombreuse recherche et d’essais infructueux, je viens poster ici en espérant avoir un contributeur avec une réponse me permettant d'avancer.

Objectif : Convertir un document XML (fourni avec ou sans XSL) avec XSLT pour avoir un rendu graphique en mode PDF

Déjà, est-ce que la logique est bonne ?

Grâce à ce code ci-dessous :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
public static void creerPDF(String xml, String xsl) throws Exception{ 
 
        TransformerFactory factory = TransformerFactory.newInstance();
        Source xslt = new StreamSource(new File(xsl));
        Transformer transformer = factory.newTransformer(xslt);
 
        Source text = new StreamSource(new File(xml));
        transformer.transform(text, new StreamResult(new File("output.xml")));
}
J'obtiens un XML en sortie, qui a fait l'objet d'une fusion entre le XSL et le XML de base.
Problème, lorsque j'essaie d'ouvrir ce nouveau fichier XML dans mon navigateur, j'ai d’innombrable erreur dû à une mauvaise génération de ce XML.

Quelqu'un aurais une idée sur ce problème ?

En retouchant toutes les erreurs dans ce XML, j'arrive finalement à obtenir une visualisation correct de ce XML dans mon navigateur.
En prenant en compte que ces erreurs d'automatismes soient réglées, la prochaine étape c'est de convertir de document XML en document PDF (ou autre fichier de visualisation).

Comment faire à partir d'un XML pour transformer celui-ci en un format de type, image ou PDF peu importe ?
J'ai entendu parler de FOP pour la conversion vers un PDF, mais malheureusement je n'ai absolument rien compris à son fonctionnement et encore moins à son installation. Si quelqu'un peut m'éclairer...

Questions subsidiaire :


1) Dans le cadre des factures, il y a des standards XSL pour les afficher correctement à partir de leur XML, où se trouve ces standards ? Et comment les appliquer ?

2) J'ai utilisé un certain nombre de convertisseur automatique de XML vers PDF, aucun de marche (problème de génération du document), pourquoi ? Est-ce une mauvaise génération de mon XML ?

3) Un exemple java très simple avec tout le cheminement ?

Merci d'avoir pris le temps de lire mon post et en espérant que certain d'entre vous sauront répondre à quelques unes de mes interrogations.

PS : De façon manuelle, j'ai enregistrer mon nouveau XML depuis mon navigateur en HTML et via un convertisseur en ligne j'ai pu avoir mon rendu en PDF. Reste plus qu'à réussir à tout automatiser en java...

Cordialement,
Blooster.