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 :

XPath et ClassNotFoundException [JDOM]


Sujet :

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

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    294
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 294
    Points : 268
    Points
    268
    Par défaut XPath et ClassNotFoundException
    Bonjour, j'ai un problème avec mon code. Lorsque je veux parcourir un fichier xml, j'ai une exception qui est levé mais je n'arrive pas à trouver mon erreur.

    Tout d'abord voici le message d'erreur:
    17:09:13,384 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/Sync].[com.nodbox.httpservlet.request.async.UploadServlet]] (http--0.0.0.0-8080-1) "Servlet.service()" pour la servlet com.nodbox.httpservlet.request.async.UploadServlet a généré une exception: java.lang.ClassNotFoundException: org.jaxen.NamespaceContext from [Module "deployment.Services.war:main" from Service Module Loader]
    at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:190)
    at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:468)
    at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:456)
    at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:423)
    at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:398)
    at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:120)
    at java.lang.Class.forName0(Native Method) [rt.jar:1.6.0_31]
    at java.lang.Class.forName(Class.java:169) [rt.jar:1.6.0_31]
    at org.jdom.xpath.XPath.newInstance(XPath.java:134) [jdom-1.1.3.jar:1.1.3]
    at com.nodbox.services.ParseData.parseInfosData(ParseData.java:163) [classes:]
    at com.nodbox.services.ParseData.doParseData(ParseData.java:64) [classes:]
    at com.nodbox.httpservlet.request.async.UploadServlet.doPost(UploadServlet.java:130) [classes:]
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:754) [jboss-servlet-api_3.0_spec-1.0.0.Final.jar:1.0.0.Final]
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:847) [jboss-servlet-api_3.0_spec-1.0.0.Final.jar:1.0.0.Final]
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:329) [jbossweb-7.0.10.Final.jar:]
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248) [jbossweb-7.0.10.Final.jar:]
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275) [jbossweb-7.0.10.Final.jar:]
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161) [jbossweb-7.0.10.Final.jar:]
    at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:154) [jboss-as-web-7.1.0.Final.jar:7.1.0.Final]
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:155) [jbossweb-7.0.10.Final.jar:]
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) [jbossweb-7.0.10.Final.jar:]
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) [jbossweb-7.0.10.Final.jar:]
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:368) [jbossweb-7.0.10.Final.jar:]
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:877) [jbossweb-7.0.10.Final.jar:]
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:671) [jbossweb-7.0.10.Final.jar:]
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:930) [jbossweb-7.0.10.Final.jar:]
    at java.lang.Thread.run(Thread.java:662) [rt.jar:1.6.0_31]
    Et voici mon code:
    public void parseInfosData(Element racine) throws NodBoxLibraryException {// Init Variables
    XPath xpa = null;
    Element InfoElement = null;

    // Retrieve Element for Info XPath
    try {
    xpa = XPath.newInstance("//infos");
    InfoElement = (Element) xpa.selectSingleNode(racine);
    } catch (JDOMException jde) {
    jde.printStackTrace();
    }
    }
    J'ai fais quelques testes sur mon objets racine. J'ai affiché tous ses fils, et je retrouve bien un élément "infos".
    J'ai fais quelques recherches sur la classe XPath, et j'ai remarqué que l'erreur n'étais pas dûe à mon paramètre "//infos".
    Mais plutot à ce bout de code qu'on retrouve dans la méthode "newInstance(String):
    try {
    className = System.getProperty(XPATH_CLASS_PROPERTY,
    DEFAULT_XPATH_CLASS);
    }
    catch (SecurityException ex1) {
    // Access to system property denied. => Use default impl.
    className = DEFAULT_XPATH_CLASS;
    }
    setXPathClass(Class.forName(className));
    Je travaille sur un serveur d'application JBoss AS7 et j'utilise éclispe.

    Merci d'avance pour votre aide

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 552
    Points : 21 608
    Points
    21 608
    Par défaut
    Si tu veux faire du XPath, il te faut la bibliothèque Jaxen : JDOM en a besoin.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    294
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 294
    Points : 268
    Points
    268
    Par défaut
    Je te remercie! Je n'avais pas du tout pensé à ça.

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

Discussions similaires

  1. Requete XPath: neoud XML et string
    Par alexandre54 dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 27/06/2003, 13h02
  2. [XPath] Position d'un élément
    Par ovh dans le forum XSL/XSLT/XPATH
    Réponses: 11
    Dernier message: 07/04/2003, 15h26
  3. sum(XPATH) retourne NaN
    Par TOM-Z dans le forum XMLRAD
    Réponses: 4
    Dernier message: 19/03/2003, 13h48
  4. XPath: intersection de chemins
    Par aldo047 dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 13/03/2003, 10h30
  5. Cours en Français sur XML-XSL et XPath
    Par Community Management dans le forum XSL/XSLT/XPATH
    Réponses: 0
    Dernier message: 25/04/2002, 15h46

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