IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Format d'échange (XML, JSON...) Java Discussion :

ContextFactory non trouvé [JAXB]


Sujet :

Format d'échange (XML, JSON...) Java

  1. #1
    Membre actif
    Développeur informatique
    Inscrit en
    Février 2007
    Messages
    70
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2007
    Messages : 70
    Par défaut ContextFactory non trouvé
    Bonjour,

    Voila j'utilise JaxB dans une application web pour créer un flux xml à partir d'une feuille de style xml shema. Ce flux xml me permet de générer un page pdf dynamique.

    En local sur ma machine tout fonctionne très bien mais lorsque j'ai voulus tester l'application sur un serveur Unix j'ai obtenu le message d'erreur suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
     
    javax.xml.bind.JAXBException: Provider com.sun.xml.bind.v2.ContextFactory not found
     - with linked exception:
    [java.lang.ClassNotFoundException: com.sun.xml.bind.v2.ContextFactory]
            at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:151)
            at javax.xml.bind.ContextFinder.find(ContextFinder.java:299)
            at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:372)
            at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:337)
            at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:244)
            at cram.pdf.GenererXML.getXml(GenererXML.java:133)
            at cram.pdf.PDFServlet.getSource(PDFServlet.java:26)
            at cram.pdf.PDFServlet.service(PDFServlet.java:18)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
            at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
            at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
            at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
            at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
            at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
            at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
            at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
            at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
            at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
            at java.lang.Thread.run(Thread.java:595)
    Caused by: java.lang.ClassNotFoundException: com.sun.xml.bind.v2.ContextFactory
            at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1360)
            at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1206)
            at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:116)
            ... 20 more
    [ERROR] Logger not set
    ERROR:  'null'
    FATAL ERROR:  'Could not compile stylesheet'
    javax.xml.transform.TransformerConfigurationException: Could not compile stylesheet
            at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:824)
            at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl.newTransformer(TransformerFactoryImpl.java:619)
            at cram.pdf.GenererPDF.getPDF(GenererPDF.java:47)
            at cram.pdf.PDFServlet.service(PDFServlet.java:22)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
            at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
            at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
            at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
            at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
            at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
            at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
            at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
            at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
            at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
            at java.lang.Thread.run(Thread.java:595)
    Est ce que quelqu'un sait d'où ça peut venir? Parce que là moi franchement je suis perdu..

    Voila les lignes de codes qu'indique l'erreur :

    GenererXML.java :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    	public Source getXml(){
    		try {
    			JAXBContext context = JAXBContext.newInstance("cram.pdf.classes");//<--ligne 133
    			Marshaller m = context.createMarshaller();
    			m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE);
     
    			DOMResult result = new DOMResult();
    			m.marshal(cram, result);
     
    			return new DOMSource(result.getNode());
     
    		} catch (JAXBException e) {
    			e.printStackTrace();
    		}
    		return null;
    	}
    GenererPDF.java :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    public void getPDF(Source xml, OutputStream out){
    		try {
    			Driver driver = new Driver();
    			driver.setRenderer(Driver.RENDER_PDF);
    			driver.setOutputStream(out);
    			Result resultat = new SAXResult(driver.getContentHandler());
     
    			InputStream xslIn = GenererPDF.class.getClassLoader().getResourceAsStream("/export/home/bastien/apache-tomcat-6.0.16/webapps/Intranet/WEB-INF/classes/cram/pdf/FOPCram.xsl");
    			Source style = new StreamSource(xslIn);
     
    			TransformerFactory transformerFactory = TransformerFactory.newInstance();
     
    			Transformer transformer = transformerFactory.newTransformer(style);//<--ligne 47
    			transformer.setURIResolver(URI_RESOLVER);
    			transformer.transform(xml, resultat);
    		} catch (Throwable t) {
    			t.printStackTrace();
    		}
    	}
    Voila si vous avez besoin de renseignment supplémentaire n'hésitez pas.

  2. #2
    Membre chevronné
    Profil pro
    Développeur Java
    Inscrit en
    Novembre 2007
    Messages
    301
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Novembre 2007
    Messages : 301
    Par défaut
    Tu as oublié de mettre le jar de jaxb dans ton classpath.

  3. #3
    Membre actif
    Développeur informatique
    Inscrit en
    Février 2007
    Messages
    70
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2007
    Messages : 70
    Par défaut
    Non le jar de jaxb est bien présent car je n'ai pas d'erreur en local lorsque je modifie le chemin du fichier "FOPCram.xsl" dans la classe "GenererPDF".

  4. #4
    Membre chevronné
    Profil pro
    Développeur Java
    Inscrit en
    Novembre 2007
    Messages
    301
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Novembre 2007
    Messages : 301
    Par défaut
    Tu dis bien qu'en local ça marche car tu as bien le jar mais es-ce que le jar est présent sur le serveur ?

  5. #5
    Membre actif
    Développeur informatique
    Inscrit en
    Février 2007
    Messages
    70
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2007
    Messages : 70
    Par défaut
    oui parce que en faite j'exporte mon projet eclipse sous la forme d'un war que je copie dans le webapps du tomcat du serveur donc il contient les même jar que mon application locale.

    le message d'erreur a un peu changer quand j'ai modifier le chemin du fichier xsl dans GenererPDF :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    javax.xml.bind.JAXBException: Provider com.sun.xml.bind.v2.ContextFactory not found
     - with linked exception:
    [java.lang.ClassNotFoundException: com.sun.xml.bind.v2.ContextFactory]
            at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:151)
            at javax.xml.bind.ContextFinder.find(ContextFinder.java:299)
            at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:372)
            at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:337)
            at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:244)
            at cram.pdf.GenererXML.getXml(GenererXML.java:133)
            at cram.pdf.PDFServlet.getSource(PDFServlet.java:26)
            at cram.pdf.PDFServlet.service(PDFServlet.java:18)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
            at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
            at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
            at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
            at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
            at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
            at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
            at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
            at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
            at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
            at java.lang.Thread.run(Thread.java:595)
    Caused by: java.lang.ClassNotFoundException: com.sun.xml.bind.v2.ContextFactory
            at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1360)
            at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1206)
            at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:116)
            ... 20 more
    [ERROR] Logger not set
    ERROR:  ''
    javax.xml.transform.TransformerException: java.lang.NullPointerException
            at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:651)
            at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:281)
            at cram.pdf.GenererPDF.getPDF(GenererPDF.java:49)
            at cram.pdf.PDFServlet.service(PDFServlet.java:22)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
            at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
            at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
            at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
            at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
            at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
            at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
            at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
            at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
            at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
            at java.lang.Thread.run(Thread.java:595)
    Caused by: java.lang.NullPointerException
            at com.sun.org.apache.xalan.internal.xsltc.runtime.AbstractTranslet.transform(AbstractTranslet.java:594)
            at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:644)
            ... 16 more
    ---------
    java.lang.NullPointerException
            at com.sun.org.apache.xalan.internal.xsltc.runtime.AbstractTranslet.transform(AbstractTranslet.java:594)
            at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:644)
            at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:281)
            at cram.pdf.GenererPDF.getPDF(GenererPDF.java:49)
            at cram.pdf.PDFServlet.service(PDFServlet.java:22)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
            at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
            at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
            at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
            at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
            at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
            at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
            at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
            at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
            at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
            at java.lang.Thread.run(Thread.java:595)

  6. #6
    Membre actif
    Développeur informatique
    Inscrit en
    Février 2007
    Messages
    70
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2007
    Messages : 70
    Par défaut
    J'ai résolu le problème grâce à un collègue en fait il me manquait des .jar. La seul chose que je ne comprend pas c'est que ces .jar n'était pas présent dans ma version locale et que tout fonctionnais trés bien (j'ai un jdk 1.5 sur les 2 versions).

    Enfin bref ca marche sujet résolu

  7. #7
    Invité de passage
    Inscrit en
    Juillet 2009
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 1
    Par défaut
    Bonjour Bastien;

    Il aurait été intéressant d'expliquer ta solution avant de passer le thread en "Résolu". Pour moi, tel quel, ça ne résout rien.

    Connais-tu encore deux ans après, les fameux jars manquants?

    Cdt

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 36
    Par défaut
    j'ai le même problème, quels sont ces jars qui manquent?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Plugin] Classe non trouvée au runtime
    Par toto_toto dans le forum Eclipse Platform
    Réponses: 1
    Dernier message: 15/02/2005, 10h36
  2. Création version client - fichiers non trouvés
    Par Pascal dans le forum WinDev
    Réponses: 7
    Dernier message: 03/12/2004, 11h34
  3. [debutant][Classpath][Linux] Classe non trouvée
    Par oghma777 dans le forum Général Java
    Réponses: 5
    Dernier message: 15/10/2004, 21h26
  4. COleDispatchDriver et Afx.h -> LPCSTR non trouvé
    Par Bayard dans le forum C++Builder
    Réponses: 2
    Dernier message: 25/09/2004, 08h42
  5. [Debutant][Install][VS]erreur sur fichier non trouvé.
    Par silvermoon dans le forum DirectX
    Réponses: 4
    Dernier message: 16/07/2004, 20h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo