Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
981 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Parser java xml ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Parser java xml ?

n°438828
pilou50
Posté le 25-06-2003 à 11:42:40  profilanswer
 

bonjour,
 
Je voudrais parser un doc xml en objet java, très simple.
Que me conseillez-vous? Avez-vous un exemple ?
(J'ai essayé de tester jaxb mais j'ai un pb avec le package primer.po, introuvable)
 
Merci de vos conseils

mood
Publicité
Posté le 25-06-2003 à 11:42:40  profilanswer
 

n°438831
gizmo
Posté le 25-06-2003 à 11:46:09  profilanswer
 

jaxb? tu veux parler de jaxp? parce que si c'est bien ca, je n'ai pas de trace d'un tel package.

n°438833
pilou50
Posté le 25-06-2003 à 11:47:34  profilanswer
 

jaxb
 
il y a un exemple que je voudrais tester sur :
http://java.sun.com/webservices/docs/1.1/tutorial/doc/

n°438835
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 25-06-2003 à 11:48:09  profilanswer
 

Xerces d'Apache est bien. Mais y en a d'autres (que je connais pas ; Xerces est le seul avec lequel j'ai déjà joué).
cf http://xml.apache.org/xerces2-j/index.html


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°438839
gizmo
Posté le 25-06-2003 à 11:50:11  profilanswer
 

pilou50 a écrit :

jaxb
 
il y a un exemple que je voudrais tester sur :
http://java.sun.com/webservices/docs/1.1/tutorial/doc/
 


Ok, je ne connais pas celui là. Mais jaxp, juste au dessus dans les liens fonctionne très bien et est super simple à utiliser.

n°438915
pilou50
Posté le 25-06-2003 à 13:20:14  profilanswer
 

gizmo a écrit :


Ok, je ne connais pas celui là. Mais jaxp, juste au dessus dans les liens fonctionne très bien et est super simple à utiliser.


 
J'ai suivi tes conseils et j'uilise jaxp.  
Mais je ne comprends pas commend créer le 'handle' nécessaire (et à quoi ça correspond) :
saxParser.parse("priceList.xml", handler);  
 
Merci

n°438925
the real m​oins moins
Posté le 25-06-2003 à 13:29:28  profilanswer
 

jdom, super simple [:spamafote]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°438926
pilou50
Posté le 25-06-2003 à 13:31:17  profilanswer
 

je vais chercher alors

n°438969
pilou50
Posté le 25-06-2003 à 14:04:44  profilanswer
 

Argh !...
 
----------
org.xml.sax.SAXParseException: The processing instruction target matching "[xX][mM][lL]" is not allowed.
        at org.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.j
ava:1139)
        at javax.xml.parsers.SAXParser.parse(SAXParser.java:314)
        at javax.xml.parsers.SAXParser.parse(SAXParser.java:253)
        at Parser3.load_marche(Parser3.java:22)
        at Parser3.main(Parser3.java:32)
----------

n°439002
the real m​oins moins
Posté le 25-06-2003 à 14:23:07  profilanswer
 

ton document est pas valide [:spamafote]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
mood
Publicité
Posté le 25-06-2003 à 14:23:07  profilanswer
 

n°439422
pilou50
Posté le 25-06-2003 à 17:56:58  profilanswer
 

En effet. Merci!

n°439424
swgreedo
Posté le 25-06-2003 à 17:58:28  profilanswer
 

Citation :

J'ai suivi tes conseils et j'uilise jaxp.  
Mais je ne comprends pas commend créer le 'handle' nécessaire (et à quoi ça correspond) :  
saxParser.parse("priceList.xml", handler);  


Le choix d'un parser (ou plus précisément d'une API XML) dépendra de ce que tu veux faire sur ton document :
 - le parser (SAX) que tu as pris pour l'instant est de type évènementiel ; autrement dit, il impose de créer des 'handlers' pour définir un traitement automatique en fonction des données présentes dans ton doc;
 - si tu veux parcourir ton document manuellement, lire des données, en ajouter, en supprimer, etc, alors il te faut une API comme JDOM, Xerces ou DOM4J ; elle utilisera un parser basé sur SAX pour traduire ton fichier en objet Document que tu pourras ensuite parcourir comme bon te semble.
 
 

Citation :

Argh !...  
 
----------  
org.xml.sax.SAXParseException: The processing instruction target matching "[xX][mM][lL]" is not allowed.  
       at org.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.j  
ava:1139)  
       at javax.xml.parsers.SAXParser.parse(SAXParser.java:314)  
       at javax.xml.parsers.SAXParser.parse(SAXParser.java:253)  
       at Parser3.load_marche(Parser3.java:22)  
       at Parser3.main(Parser3.java:32)  
----------


Balance ton fichier si il n'est pas trop gros...

n°439435
nraynaud
lol
Posté le 25-06-2003 à 18:17:52  profilanswer
 

Taiche a écrit :

Xerces est le seul avec lequel j'ai déjà joué

T'as gagné ? (petite forme aujourd'hui)

n°439436
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 25-06-2003 à 18:18:43  profilanswer
 

nraynaud a écrit :

T'as gagné ? (petite forme aujourd'hui)


Pour l'instant, je gagne [:ddr555]  
Mais il prend sa revanche quand il peut lorsqu'il récupère un document XML tronqué :sweat:


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°439442
nraynaud
lol
Posté le 25-06-2003 à 18:26:21  profilanswer
 

Taiche a écrit :


Pour l'instant, je gagne [:ddr555]  
Mais il prend sa revanche quand il peut lorsqu'il récupère un document XML tronqué :sweat:

Cesse-donc d'utiliser des outils professionels pour t'amuser ! (oulala, c'est une petite dépression hivernale je crois)

n°439942
pilou50
Posté le 26-06-2003 à 10:54:19  profilanswer
 


Merci pour ces explications.
Voila ce que je dois faire : Je récupère des données et crée des objets (beans) java avec ces données. Je me suis limité au parser SAX. Ca marche. (je n'ai pas forcément le temps d'appronfondir).
 
Mais un autre problème est apparu :
Je ne peux pas parser des chaines qui contient des acccents. Merci d'avance pour votre aide.
 
par ex :
<nom>etienne</nom> va marche alors que :
<nom>étienne</nom> va lever une exception :
 
-------
org.xml.sax.SAXParseException: Erreur de conversion de caractÞre : "Malformed UT
F-8 char -- is an XML encoding declaration missing?" (le numÚro de ligne peut Ût
re trop bas).
        at org.apache.crimson.parser.InputEntity.fatal(InputEntity.java:1100)
        at org.apache.crimson.parser.InputEntity.fillbuf(InputEntity.java:1072)
        at org.apache.crimson.parser.InputEntity.isXmlDeclOrTextDeclPrefix(Input
Entity.java:914)
        at org.apache.crimson.parser.Parser2.maybeXmlDecl(Parser2.java:1009)
        at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:486)
        at org.apache.crimson.parser.Parser2.parse(Parser2.java:305)
        at org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:442)
 
        at org.xml.sax.helpers.XMLReaderAdapter.parse(XMLReaderAdapter.java:223)
 
        at javax.xml.parsers.SAXParser.parse(SAXParser.java:314)
        at javax.xml.parsers.SAXParser.parse(SAXParser.java:253)
        at Parser3.load_marche(Parser3.java:22)
        at Parser3.main(Parser3.java:32)
-------
 
(message posté aussi dans un nouveau thread)

n°440228
benou
Posté le 26-06-2003 à 13:59:52  profilanswer
 

il faut que tu règle correctement l'encoding en ajoutant ca comme première ligne du fichier xml :  
 
<?xml version="1.0" encoding="ISO-8859-1"?>


---------------
ma vie, mon oeuvre - HomePlayer
n°441196
pilou50
Posté le 27-06-2003 à 09:28:32  profilanswer
 

benou a écrit :

il faut que tu règle correctement l'encoding en ajoutant ca comme première ligne du fichier xml :  
 
<?xml version="1.0" encoding="ISO-8859-1"?>
 


 
Très bien, merci beaucoup.
 
A +


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Parser java xml ?

 

Sujets relatifs
[Java] parser, éditeur,.. des idées ?[JAVA] Parser MIME (JavaMail)
[Xerces ?] Parser du HTML en Java[java] parser XML : fichier XML dans un jar ou non....
Parser du XML avec les API Java[Java] Parser XML léger
[ java / regexp ] parser un fichier texte.[XML / Java] SAX Parser API needed !
[XML / Java] DTD pas trouve = pas possible de parser?parser un fichier xml en java
Plus de sujets relatifs à : Parser java xml ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR