[java] parser XML : fichier XML dans un jar ou non....

parser XML : fichier XML dans un jar ou non.... [java] - Java - Programmation

Marsh Posté le 28-06-2002 à 12:16:13    

salut,
mon appli a un comportement assez bizarre. En effet, je cherche à parser des documents XML. Ils peuvent être dans un répertoire ou dans un jar.
Lorsqu'ils sont dans un répertoire normal, pas de pb, ça marche bien.
Quand les mêmes fichiers sont dans un jar, alors là, j'ai des erreurs lors du parsage !!!! (alors que le org.JDom.Document a réussi à être créé !)
Je cherche, je cherche, mais je vois pas pkoi ça ne marche pas de la même façon !


---------------
Ma galerie photo créée avec Piwigo et hébergée sur Piwigo.com
Reply

Marsh Posté le 28-06-2002 à 12:16:13   

Reply

Marsh Posté le 28-06-2002 à 12:16:41    

comment lis tu ton fichier?


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 28-06-2002 à 12:19:38    

DarkLord a écrit a écrit :

comment lis tu ton fichier?




Code :
  1. DOMBuilder builder = new DOMBuilder();
  2. JarFile jf;
  3. jf = new JarFile( new File( jarFilePath ) );
  4. ZipEntry ze;
  5. InputStream in;
  6. Enumeration fichiers = jf.entries();
  7. while ( fichiers.hasMoreElements() )
  8. {
  9. ze = ( ZipEntry ) fichiers.nextElement();
  10. in = jf.getInputStream( ze );
  11. genericDocument = builder.build( in );
  12. }


Message édité par z0rglub le 28-06-2002 à 12:20:58

---------------
Ma galerie photo créée avec Piwigo et hébergée sur Piwigo.com
Reply

Marsh Posté le 28-06-2002 à 12:28:35    

et si tu mettais un peu des traces dans tou cela no di djo. Et si il y a autre chose qu'un fichier XML dans ton jar?  :sarcastic:  
 
N'oublie pas que Jar = ZIP + fichier manifest.mf
 
donc ...
 
Commence déjà par imprimer dans la console le nom du fichier que tu parses. Et surout donne la stacktrace de ton document !!!
 
(je me demande comment on peut poser des questions comme ca sans avoir lancé sa classe en mode debug avec des traces etc)


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 28-06-2002 à 12:30:41    

oui, bon OK, j'ai compris la connerie : j'ai placé la DTD dans le jar, dans le même rep que les fichiers XML, seulement voilà, dans mon fichier XML, il est spécifié :
<!DOCTYPE Entity SYSTEM "maDTD.dtd">
 
et en fait je ne l'utilise pas !!!! bordel de merde (pardonnez l'expression !)
Du coup, je ne sais pas comment utiliser cette DTD (parce que mon boss tient à ce que les fichier xml et la DTD soient dans le jar....)


---------------
Ma galerie photo créée avec Piwigo et hébergée sur Piwigo.com
Reply

Marsh Posté le 28-06-2002 à 12:34:32    

DarkLord a écrit a écrit :

et si tu mettais un peu des traces dans tou cela no di djo. Et si il y a autre chose qu'un fichier XML dans ton jar?  :sarcastic:  
 
N'oublie pas que Jar = ZIP + fichier manifest.mf
 
donc ...
 
Commence déjà par imprimer dans la console le nom du fichier que tu parses. Et surout donne la stacktrace de ton document !!!
 
(je me demande comment on peut poser des questions comme ca sans avoir lancé sa classe en mode debug avec des traces etc)




je te dis simplement que le code que je te donne, c'est juste les lignes "intéressantes". Pas tout le code.


---------------
Ma galerie photo créée avec Piwigo et hébergée sur Piwigo.com
Reply

Marsh Posté le 28-06-2002 à 12:38:56    

et bien c'est possible en decompressant d'abord le fichier XML dans un répoertoire quelconque et en y mettant la DTD. A ce moment là ca fonctionnera :)
 
Je ne connais aucun mécanisme permettant de stocker un doc XML et une DTD dans un jar et de spécifier un path dans le JAR pour la DTD :p
 
de toutes façons ca serait stupide.
 


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 28-06-2002 à 12:42:32    

on retombe sur le problème du forcage de la DTD pour un parsing XML ...

Reply

Marsh Posté le 28-06-2002 à 12:43:04    

ok, je vais essayer de faire ça : décompresser le répertoire avec mes fichiers XML et lire dans le répertoire en question. ça sera plus simple !


---------------
Ma galerie photo créée avec Piwigo et hébergée sur Piwigo.com
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed