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 :

Sérialisation d'un OMElement


Sujet :

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

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 89
    Par défaut Sérialisation d'un OMElement
    Bonjour,
    Lorsque j'exécute le bout de code suivant (que l'on trouve un peu partout dans les tutoriels), j'obtiens un "NullPointerException":
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    OMFactory factory = OMAbstractFactory.getOMFactory();
    OMNamespace poNs = factory.createOMNamespace("http://openuri.org/easypo", "po");
    OMElement lineItem = factory.createOMElement("line-item", poNs);
     
    XMLOutputFactory xof = XMLOutputFactory.newInstance();
    XMLStreamWriter writer;
     
    writer = xof.createXMLStreamWriter(System.out);
    lineItem.serialize(writer);
    Je pense avoir une vague idée d'où vient l'erreur mais n'en suis pas sûr: OMElement est une interface et donc il faut utiliser une implémentation (exemple : org.apache.axiom.om.impl.llom.OMElementImpl). Si tel est la cas, pourquoi alors déclarer une interface si il faut changer de nom (OMElementImpl) pour l'implémentation. Bref, entre interface et implémentation je suis "confused".
    Christian

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 89
    Par défaut La solution
    Je mets ici la réponse au problème que j'ai trouvé en passant pas mal de temps à relire la javadoc et réfléchir ... bizarrement, les tutoriels trouvés oublient tous de mentionner la chose.
    Il convient de rajouter
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xof.setProperty("javax.xml.stream.isRepairingNamespaces",false);
    après avoir créé une nouvelle instance de XMLOutputFactory. C'est plus ou moins indiqué dans la javadoc de XMLOutputfactory.
    Christian

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

Discussions similaires

  1. [Sérialisation] d'objets de types différents
    Par Amnesiak dans le forum Général Java
    Réponses: 3
    Dernier message: 08/12/2004, 22h28
  2. [Sérialisation] StackOverFlowError levée
    Par ptitjack dans le forum Général Java
    Réponses: 9
    Dernier message: 04/11/2004, 13h27
  3. [Serializable][image] Sérialiser une image
    Par Galima dans le forum Graphisme
    Réponses: 7
    Dernier message: 01/07/2004, 18h12
  4. Sérialisation avec sockets
    Par sebi77 dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 03/05/2004, 20h24
  5. SGBD ou sérialisation
    Par tiboleo dans le forum Décisions SGBD
    Réponses: 3
    Dernier message: 07/10/2003, 16h18

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