JAX , XML, DTD,

JAX , XML, DTD, - Java - Programmation

Marsh Posté le 06-01-2006 à 10:21:52    

bonjour,
j'ai un petit soucis avec mon code Java là.
 
En fait je travaille sur un petit programme java et je veux enregistrer la configuration dans un fichier xml, là pas trop de soucis.
De même je veux la recharger depuis l'XML, pas de soucis aussi.
 
Par contre je voulais être sur de mon fichier XML (même si en théorie il ne devrait pas bouger, vu qu'il reste toujours en local) donc j'ai rajouté une DTD qui va bien.
 
Mon soucis en fait c'est que la fonction :  
public void startElement(String nameSpaceURI, String localName, String rawName, Attributes attributs) throws SAXException
 
devrait en théorie me renvoyer une SAXException si jamais une balise ne correspond pas à la DTD, mais bien sûr je ne recois jamais rien (j'ai fait mes tests en remplacant la balise <name> par <namer> par exemple, .
 
Je me plante peut etre dans mon code (surement même), donc je demande votre aide SVP ;)
 
Voici ma classe qui recoit l'adresse du fichier XML et qui appele le parser
 

Code :
  1. public class SimpleSaxParser{
  2.     public static void main(String[] args) {
  3.        
  4.             if (0 == args.length || 2 < args.length) {
  5.          
  6.                     System.out.println("Path problem" );
  7.             }
  8.            
  9.             String uri = args[0];
  10.            try {
  11.              XMLReader saxReader = XMLReaderFactory.createXMLReader();
  12.            
  13.              try {
  14.     saxReader.setContentHandler(new SimpleContentHandler());
  15.     saxReader.parse(uri);
  16.    }
  17.                 catch (SAXException e) {
  18.                  System.out.println("toto" );
  19.                 }
  20.             }
  21.             catch (Throwable t) {
  22.              t.printStackTrace();
  23.             }
  24.         }
  25. }


 
La classe SimpleContentHandler contient mon parser, avec la fonction  
public void startElement(String nameSpaceURI, String localName, String rawName, Attributes attributs) throws SAXException
 
et je n'ai jamais 'toto' dans ma console :(
 
Si vous avez besoin de plus de détail ou autre je répondrais :)
 
Merci bien,
 
:hello:


Message édité par gee le 06-01-2006 à 10:23:35
Reply

Marsh Posté le 06-01-2006 à 10:21:52   

Reply

Sujets relatifs:

Leave a Replay

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