Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème avec fop

J'ai une erreur help me please

    10 mai 2006 à 12:18:04

    Bonjour

    Bon je sais pas si j'aurais beaucoup d'aides, je tente ma chance :)

    Voila je souhaire générer un fichier .pdf a partir d'un fichier XLS et XML.
    Pour cela j'utilise FOP.

    J'ai testé avec quelques fichiers XML et XLS, cela marche.

    Par contre j'ai un soucis dans un ou deux cas.

    En effet j'ai une erreur et je sais pas s'où cela peut venir, j'ai fait des recherches sur google et rien .

    Pouvez vous m'aider svp?

    Mon erreur est "[ERROR] org.apache.fop.apps.FOPException: No flow in page-sequence"

    Je vous en remercie par avance.

    • Partager sur Facebook
    • Partager sur Twitter
      10 mai 2006 à 14:27:22

      Slt,

      ça serait peut être plus facile avec le code ;)

      Sinon, ça à l'air d'être une erreur de <flow/> non présent dans un <page-sequence/>.

      a+
      • Partager sur Facebook
      • Partager sur Twitter
        10 mai 2006 à 15:29:07

        Arf j'ai un peu honte car a vrai dire je connais pas du tout l'XML et XSL.

        J'ai juste compris qu'on a un fichier de données XML et un fichier pour la mise en forme XSL. En partant des ces deux fichier on doit creer un fichier pdf.
        Cette dernière étape compose ma "mission".
        Donc j'ai installé le FOP sur ma mandrake.

        J'ai testé et pour certains fichier ca marche nickel. Mais pour d'autres j'ai un message d'erreur (cf premier message).

        Je suis perdu, je sais pas par où commencer :euh: .

        Cette erreur concerne t elle le fichier XML ou XSL? la balise <flow/> et la balise <page-sequance/> c'est quoi svp?

        J'espère que vous aurez la patience de m'expliquer enfin je vais essayer de lire des débuts de cours.

        Merci d'avance

        • Partager sur Facebook
        • Partager sur Twitter
          10 mai 2006 à 15:51:40

          Slt,

          dans ton cas, la feuille de style Xslt transforme du XML en Formatting-Object (qui est un langage XML qui sert à écrire des documents pour l'impression, une sorte de pdf). Et après, FOP s'occupe de transformer le document FO en pdf.
          Dans ton cas il semble y avoir une erreur, parceque ton document FO qui vient de la transformation ne semble pas valide (il n'y a pas d'élément <flow/> dans <page-sequence/> alors qu'il devrait y en avoir).
          Donc le problème vient soit de la feuille de style, soit du document XML (il manque des données).

          C'est quoi tes documents XML de départ au juste ?

          a+
          • Partager sur Facebook
          • Partager sur Twitter
            10 mai 2006 à 17:28:05

            coucou

            Donc mon fichier XML à une forme "simple" avec des balises comme adresse, nom etc..

            Il est valide car lors de son ouverture avec un navigateur, il m'affiche aucune erreur.

            Pour le fichier XSL, je l'ai comparé avec un autre fichier xsl plus simple. La différence ce situe au niveau des page-sequence en effet mon fichier xsl en contient deux.

            La création du fichier XSL s'est fait à partir d'un soft "xslfast" en utilisant 2 ou 3 layout.

            Ca vient peut être de ca, fop ne supporte pas d'avoir plusieurs page-sequence? Ou généré un fichier xsl à partir de plusieurs layout?

            Je sais pas s'il y a une solution :s snif
            • Partager sur Facebook
            • Partager sur Twitter
              10 mai 2006 à 17:39:59

              Slt,

              le fait que ton navigateur affiche le fichier XML signifie qu'il est bien formé, mais pas qu'il est valide.

              Pour vois d'où vient le prob, un même document avec les deux feuilles de styles Xslt, de sorte que celà fonctionne avec la première.
              Sinon, visite le site de Fop pour voir si <page-sequance/> est supporté.

              Ou alors donne nous du code :)

              a+
              • Partager sur Facebook
              • Partager sur Twitter
                11 mai 2006 à 9:41:49

                Re

                Merci pour ton aide :)

                Donc j'ai trouvé un site pour valider mon fichier XML.

                Site pour la validation des fichiers XML

                Je n'ai aucune erreur.

                Ca doit vraiment venir du fichier XLS.

                Par contre je comprend pas trop :

                Citation : De Tangui

                Pour vois d'où vient le prob, un même document avec les deux feuilles de styles Xslt, de sorte que celà fonctionne avec la première. ??



                Je pense que <page-sequance/> est bien supporté par Fop car avec une sequence ca marche et de pus, surle site de xslFash ils mettent une compatiblité avec "Fop". Enfin je vais aller me rensigner.

                Pour mon code source il est vraiment long c'est pour ca, et de plus c'est un travail fait par mon taf donc je n'ose pas trop le poster ^^

                Merci encore :)

                P.S: J'ai trouvé ca

                Citation : Fop 0.20.3

                This version supports the XSL-FO Version 1.0 W3C Recommendation syntax. So don't forget to update your Stylesheets:
                Just rename the master-name property to master-reference on fo:page-sequence, fo:single-page-master-reference, fo:repeatable-page-master-reference and fo:conditional-page-master-reference. je sais pas trop ce que je dois modifier?



                Autre info, j'ai lancé le mode debug et j'ai ce message:

                Citation : mode debug

                at org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java
                :3407)
                at org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(Trans
                formerHandlerImpl.java:433)
                at org.apache.xerces.parsers.AbstractSAXParser.endDocument(Unknown Sourc e)
                at org.apache.xerces.impl.XMLDocumentScannerImpl.endEntity(Unknown Sourc e)
                at org.apache.xerces.impl.XMLEntityManager.endEntity(Unknown Source)
                at org.apache.xerces.impl.XMLEntityManager$EntityScanner.load(Unknown So urce)
                at org.apache.xerces.impl.XMLEntityManager$EntityScanner.skipSpaces(Unkn own Source)
                at org.apache.xerces.impl.XMLDocumentScannerImpl$TrailingMiscDispatcher. dispatch(Unknown Source)
                at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Un known Source)
                at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)
                at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)
                at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
                at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
                at org.apache.xalan.transformer.TrAXFilter.parse(TrAXFilter.java:134)
                at org.apache.fop.apps.Driver.render(Driver.java:498)
                at org.apache.fop.apps.CommandLineStarter.run(CommandLineStarter.java:10 6)
                at org.apache.fop.apps.Fop.main(Fop.java:62)

                C'est un peu du chinois pour moi aie :s

                Enfin je vais essayer de dl la 0.91 pour voir enfin c'est une beta :s


                Re

                Bon je crois que ca marche j'ai juste mis à jour ma version de Xalan et de Xerces

                Merci en ctout cas de ton aide :D c'est vraiment sympa :)


                Edit : J'ai parlé trop vite :'(

                En effet je suis confronté à plusieurs messages d'erreur lors de l'excution de "Fop".
                Ces messages font références à "saxon.jar" alors qu'il est présent dans le répertore "lib" de "Fop".
                Voici mon erreur :

                Citation : Erreur

                file:///home/laurent/Missions/ListeEtatProvisoire.xsl; Ligne #879; Colonne #68; javax.xml.transform.TransformerException: java.lang.ClassNotFoundException: saxon



                Tu crois que cela vient de qui ?

                Pff vraiment embettant tout ca :(
                • Partager sur Facebook
                • Partager sur Twitter
                  12 mai 2006 à 9:24:10

                  C'est vraiment très gentil de vouloir m'aider.



                  Donc je suis sur la mandrake 10.1.

                  Ma version de Fop est la 0.20.5



                  La commande pour générer mon pdf est:





                  [CODE]

                  fop -xml Fichier.xml -xsl Fichier.xsl -pdf Fichier.pdf

                  [/CODE]





                  Dans un premier temps j'avais des erreurs sur certains fichier de la forme :



                  [CODE]

                  at org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java
                  :3407)
                  at org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(Trans
                  formerHandlerImpl.java:433)
                  at org.apache.xerces.parsers.AbstractSAXParser.endDocument(Unknown Sourc e)
                  at org.apache.xerces.impl.XMLDocumentScannerImpl.endEntity(Unknown Sourc e)
                  at org.apache.xerces.impl.XMLEntityManager.endEntity(Unknown Source)
                  at org.apache.xerces.impl.XMLEntityManager$EntityScanner.load(Unknown So urce)
                  at org.apache.xerces.impl.XMLEntityManager$EntityScanner.skipSpaces(Unkn own Source)
                  at org.apache.xerces.impl.XMLDocumentScannerImpl$TrailingMiscDispatcher. dispatch(Unknown Source)
                  at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Un known Source)
                  at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)
                  at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)
                  at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
                  at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
                  at org.apache.xalan.transformer.TrAXFilter.parse(TrAXFilter.java:134)
                  at org.apache.fop.apps.Driver.render(Driver.java:498)
                  at org.apache.fop.apps.CommandLineStarter.run(CommandLineStarter.java:10 6)
                  at org.apache.fop.apps.Fop.main(Fop.java:62)

                  [/CODE]




                  Je n'avais pas du tout de fichier pdf



                  Donc j'ai mis à jour ma version de Xalan qui a résolut ce pb.



                  Par contre j'ai une nouvelle erreur voir premier post, cette fois j'ai un .pdf mais qui correpond pas tout à fait à l'original :( c'est ce saxon qui doit tout faire foirer :( )



                  Voila j'espère que j'ai été assez clair.



                  Merci d'avance

                  • Partager sur Facebook
                  • Partager sur Twitter
                    12 mai 2006 à 17:49:06

                    Bah je peux franchement pas t'aider j'ai jamais utiliser Saxon, Fop et le format FO...

                    a+ et bonne chance !
                    • Partager sur Facebook
                    • Partager sur Twitter

                    Problème avec fop

                    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                    • Editeur
                    • Markdown