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

  FORUM HardWare.fr
  Programmation
  Divers

  [XML] Prog de base mais qui ne marche pas ??? - PB RESOLU -

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[XML] Prog de base mais qui ne marche pas ??? - PB RESOLU -

n°286090
magicien96
Même pas peur @sato
Posté le 14-01-2003 à 16:13:06  profilanswer
 

Bonjour à tous ceux qui veulent bien m'aider...
 
Voilà, je suis depuis pas longtemps dans le xml et impossible de sortir un document parser...  :cry:  
 
utilisation de SAX 2.0
utilisation de jaxp de sun
et nombreuse larme au bout....
 
-> pb à la fin du topic
 
I - utilisation du parseur : (Testparse)
 
import org.xml.sax.*;
import org.xml.sax.helpers.*;
import org.xml.sax.ext.*;
import org.xml.sax.XMLReader;
import javax.xml.parsers.SAXParserFactory;
import java.util.Properties;
import javax.xml.parsers.SAXParser;
import java.io.IOException;
import javax.xml.parsers.ParserConfigurationException;
 
 
public class Testparse{
 public static void main(String [] args){
   
  SAXParser parser;
   
  DefaultHandler handler = new MyApplicationParseHandler();
   
  SAXParserFactory factory = SAXParserFactory.newInstance();
   
  factory.setNamespaceAware(true);
  factory.setValidating(true);
 
   
 System.out.println("avant try" );
   
    try {
      parser = factory.newSAXParser();
      parser.parse("C:\\MENU.XML", handler);
 
    }
    catch (SAXException se) {
      System.out.println("error SAX" );
    }
    catch (IOException ioe) {
      System.out.println("IO" );
    }
    catch (ParserConfigurationException pce) {
        System.out.println("ParserConfigurationException" );
    }
 
 System.out.println("après catch" );
     
 }
}
 
 
II - Le handler : (MyApplicationParseHandler.java)
 
import org.xml.sax.*;
import org.xml.sax.helpers.*;
import org.xml.sax.ext.*;
import javax.xml.parsers.SAXParserFactory;
import java.util.Properties;
import javax.xml.parsers.SAXParser;
 
public class MyApplicationParseHandler extends DefaultHandler{
 
 public void startElement(String name, Attributes atts){
  System.out.println("Balise ouvrante : " + name);
 }
 public void endElement(String name){
  System.out.println("Balise fermante : " + name);
 }
 
}
 
 
III - Et un document à parser : (menu.xml)
 
 
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE menu[
<!ELEMENT menu (categorie*)>
<!ATTLIST menu
 mode (abrege | etendu) 'abrege'>
 
<!ELEMENT categorie (categorie* | application*)>
<!ATTLIST categorie
  id ID #REQUIRED
  ouvert (oui | non) 'oui'
  titre CDATA #REQUIRED>
 
<!ELEMENT application (lien, titre, description)>
<!ELEMENT lien (#PCDATA)>
<!ELEMENT titre (#PCDATA)>
<!ELEMENT description (#PCDATA)>
]>
 
<menu mode="abrege">
 <categorie id="jaxp" titre="Java API for XML Parsing">
  <application>
   <lien>/menuJSP/menuSAXJaxp.jsp</lien>
   <titre>SAX - Jaxp </titre>
   <description> Menu Java XML avec API DOM - Java API for XML Parsing</description>
  </application>
  <application>
   <lien>/menuJSP/menuDOMJaxp.jsp</lien>
   <titre>DOM - Jaxp </titre>
   <description> Menu Java XML avec API DOM - Java API for XML Parsing</description>
  </application>
</categorie>
<categorie id="xerces" titre="Apache Xerces">
  <application>
   <lien>/menuJSP/menuSAXJXerces.jsp</lien>
   <titre>SAX - Xerces </titre>
   <description> Menu Java XML avec API DOM - Apache Xerces</description>
  </application>
  <application>
   <lien>/menuJSP/menuDOMXerces.jsp</lien>
   <titre>DOM - Xerces </titre>
   <description> Menu Java XML avec API DOM - Apache Xerces</description>
  </application>
</categorie>
<categorie id="oracle" titre="Oracle XML Parser">
  <application>
   <lien>/menuJSP/menuSAXJOracle.jsp</lien>
   <titre>SAX - Oracle's XML Parser </titre>
   <description> Menu Java XML avec API DOM - Oracle's XML Parser for Java v2</description>
  </application>
  <application>
   <lien>/menuJSP/menuDOMOracle.jsp</lien>
   <titre>DOM - Oracle's XML Parser </titre>
   <description> Menu Java XML avec API DOM - Oracle's XML Parser for Java v2</description>
  </application>
</categorie>
</menu>
 
 
 

IV - CONCLUSION

 
A l'excution de testparse, il m'affiche :
 
avant try
après catch
 
et c tout  :cry:  
Logiquement, il devrait me lister toutes les balises ouvrantes et fermantes non ???
pourquoi il le fait pas  [:zoutte]


Message édité par magicien96 le 14-01-2003 à 19:23:17

---------------
Ils ne savaient pas que c'était impossible, alors ils l'ont fait. ©Mark Twain
mood
Publicité
Posté le 14-01-2003 à 16:13:06  profilanswer
 

n°286135
magicien96
Même pas peur @sato
Posté le 14-01-2003 à 16:43:53  profilanswer
 

[:zoutte]


---------------
Ils ne savaient pas que c'était impossible, alors ils l'ont fait. ©Mark Twain
n°286189
magicien96
Même pas peur @sato
Posté le 14-01-2003 à 17:31:29  profilanswer
 

pb  [:necris]


---------------
Ils ne savaient pas que c'était impossible, alors ils l'ont fait. ©Mark Twain
n°286276
magicien96
Même pas peur @sato
Posté le 14-01-2003 à 19:22:27  profilanswer
 

Pb règlé :
public void startElement(String name, Attributes atts){
 
fallait redefinir complètement startElement et endElement avec tous les attributs ! Confusion avec Sax 1.0 mais c'est un peu normal vu le peu d'info concrète avec Sax 2.0


---------------
Ils ne savaient pas que c'était impossible, alors ils l'ont fait. ©Mark Twain

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

  [XML] Prog de base mais qui ne marche pas ??? - PB RESOLU -

 

Sujets relatifs
XML/XSL avec Php[C#] docs s/ la prog Windows en C#
[C] petit problème avec fwrite et fread (resolu)Labview ça marche aussi ?
Recherche composants "base de données"propriétés des types de base
[ W3C ] c vraiement lourdingue ... [resolu]1 prog = Super idée!
Je débute en prog et je cherche un compilateur freeware en francais.calcul de moyenne sur une table sql [ résolu ]
Plus de sujets relatifs à : [XML] Prog de base mais qui ne marche pas ??? - PB RESOLU -


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