Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 9 sur 9
  1. #1
    Responsable Eclipse et JAVA

    Avatar de Mickael Baron
    Homme Profil pro Mickael BARON
    Ingénieur de Recherche en Informatique
    Inscrit en
    juillet 2005
    Messages
    6 824
    Détails du profil
    Informations personnelles :
    Nom : Homme Mickael BARON
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche en Informatique
    Secteur : Service public

    Informations forums :
    Inscription : juillet 2005
    Messages : 6 824
    Points : 34 047
    Points
    34 047

    Par défaut F.A.Q. Java XML - participez-y

    Vous pouvez participer activement à la F.A.Q Java XML

    N'hésitez pas à poster vos questions et réponses dans cette enfilade.

    Attention Réponse obligatoire, toute question Seule sera supprimée. Il faut poser la question et y répondre.

    Merci à tous pour vos contributions.

    Vincent
    Ingénieur de Recherche en informatique au LIAS / ENSMA
    Responsable des rubriques Eclipse et Java de Developpez.com

    Page de cours : mbaron.developpez.com
    Blog : keulkeul.blogspot.com
    Page Pro : www.lias-lab.fr/members/mickaelbaron
    LinkedIn : www.linkedin.com/in/mbaron
    Twitter : www.twitter.com/mickaelbaron

  2. #2
    Expert Confirmé Sénior
    Avatar de Baptiste Wicht
    Homme Profil pro Baptiste Wicht
    Étudiant
    Inscrit en
    octobre 2005
    Messages
    7 433
    Détails du profil
    Informations personnelles :
    Nom : Homme Baptiste Wicht
    Âge : 26
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : octobre 2005
    Messages : 7 433
    Points : 19 362
    Points
    19 362

    Par défaut

    Déplacement depuis participation FAQ Java :

    Citation Envoyé par jeje99 Voir le message
    Question comment vérifier le DTD d'un fichier XML avec SAX ?

    Il faut implémenter l'interface DTDHandler dans sont Handler, puis activé la validation avec factory.setValidating(true).

    Exemple :

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
     
    public class Handler extends DefaultHandler implements DTDHandler{
     
    	public void endDocument() throws SAXException {
    		System.out.println("Fin du document");
    	}
     
    	public void endElement(String uri, String localName, String qName) throws SAXException {
    		System.out.println("Fin de l'élément " + qName);
    	}
     
    	public void startDocument() throws SAXException {
    		System.out.println("Début du document");
    	}
     
    	public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
    		System.out.println("Début de l'élément " + qName);
    	}
     
    	public static void main(String[] args){
     
    		try{
    			// instanciation d'une fabrique de parseurs SAX
    			SAXParserFactory factory = SAXParserFactory.newInstance();
     
    			// instanciation d'un parseur SAX            
    			SAXParser parser = factory.newSAXParser();     
     
    			// activation de la validation XML
    			factory.setValidating(true);			
    			DefaultHandler handler = new Handler();                     
     
    			// lecture d'un fichier XML             
    			parser.parse("test.xml", handler);            
     
    		} catch(Exception e){			
    			System.err.println(e.getMessage());
    			e.printStackTrace();
    		} 
     
    	}
     
    }

  3. #3
    Membre actif

    Inscrit en
    mai 2002
    Messages
    326
    Détails du profil
    Informations personnelles :
    Âge : 34

    Informations forums :
    Inscription : mai 2002
    Messages : 326
    Points : 161
    Points
    161

    Par défaut

    Souhaitez-vous ajouter une section sur Stax ?

    Anthony

  4. #4
    Expert Confirmé Sénior


    Inscrit en
    octobre 2003
    Messages
    7 880
    Détails du profil
    Informations forums :
    Inscription : octobre 2003
    Messages : 7 880
    Points : 30 522
    Points
    30 522

    Par défaut

    Citation Envoyé par onlytoine Voir le message
    Souhaitez-vous ajouter une section sur Stax ?

    Anthony
    Bien sur

  5. #5
    Expert Confirmé Sénior Avatar de Marco46
    Homme Profil pro Marc
    Développeur informatique
    Inscrit en
    août 2005
    Messages
    1 864
    Détails du profil
    Informations personnelles :
    Nom : Homme Marc
    Âge : 33
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : août 2005
    Messages : 1 864
    Points : 4 128
    Points
    4 128

    Par défaut

    Un élément de la FAQ java XML à modifier, cf ce topic :

    http://www.developpez.net/forums/sho...d.php?t=358038

    Tout y est.

  6. #6
    Membre habitué
    Homme Profil pro Laurent Morissette
    SAQ
    Inscrit en
    novembre 2005
    Messages
    166
    Détails du profil
    Informations personnelles :
    Nom : Homme Laurent Morissette
    Âge : 31
    Localisation : Canada

    Informations professionnelles :
    Activité : SAQ
    Secteur : Service public

    Informations forums :
    Inscription : novembre 2005
    Messages : 166
    Points : 145
    Points
    145

    Par défaut

    Question: Que faire si l'on veut utiliser les fonctions d'Xpath ou des fonctions standards dans un document XML ?
    Réponse : il suffit d'inclure leur références de noms au début de fichier i.e:
    Code :
    1
    2
    3
    xmlns:fn="http://www.w3.org/2005/xpath-functions"  
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://serveur.com/schema/blog blog.xsd" 
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    Réf: http://www.w3.org/TR/xpath-functions...space-prefixes
    Si derrière tout homme il y a une femme, devant ce même homme il y a l'ordinateur que cette femme a bousillé
    ---------

    Documentation is like sex: when it is good, it is very, very good; and when it is bad, it is better than nothing. (Dick Brandon)

  7. #7
    Membre habitué
    Homme Profil pro Laurent Morissette
    SAQ
    Inscrit en
    novembre 2005
    Messages
    166
    Détails du profil
    Informations personnelles :
    Nom : Homme Laurent Morissette
    Âge : 31
    Localisation : Canada

    Informations professionnelles :
    Activité : SAQ
    Secteur : Service public

    Informations forums :
    Inscription : novembre 2005
    Messages : 166
    Points : 145
    Points
    145

    Par défaut

    Question: Lors de la lecture d'un XML défini par un schéma XSD on obtient une erreur semblable à ceci:

    Code :
    Document is invalid: no grammar found
    Réponse: c'est simple, même si le fichier xml et le schéma sont dans le même dossier il faut tout de même aviser le lecteur de leur présence
    Pour cela, il suffit de faire :
    Code java :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    try {
                // set the validation feature to true to report validation errors
                lecteur.setFeature("http://xml.org/sax/features/validation", true);
                //set the validation/schema feature to true to report validation errors against a schema
                lecteur.setFeature("http://apache.org/xml/features/validation/schema", true);
                //set the validation/schema-full-checking feature to true to enable full schema, grammar-constraint checking
                lecteur.setFeature("http://apache.org/xml/features/validation/schema-full-checking", true);
            } catch (SAXException ex) {
                //...
            }
    Si derrière tout homme il y a une femme, devant ce même homme il y a l'ordinateur que cette femme a bousillé
    ---------

    Documentation is like sex: when it is good, it is very, very good; and when it is bad, it is better than nothing. (Dick Brandon)

  8. #8
    Expert Confirmé Sénior
    Avatar de _skip
    Homme Profil pro
    Développeur d'applications
    Inscrit en
    novembre 2005
    Messages
    2 706
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur d'applications
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : novembre 2005
    Messages : 2 706
    Points : 6 275
    Points
    6 275

    Par défaut

    Suite à ce topic :
    http://www.developpez.net/forums/d73...k-6u12-remede/


    Question : En lisant de gros fichiers avec le parser SAX standard fourni dans le JDK, j'obtiens fatalement une OutOfMemoryException. (jdk6)

    Réponse : Il s'agit d'un bug lié à l'implémentation par défaut de SAX fournie par SUN.
    http://bugs.sun.com/bugdatabase/view...bug_id=6536111

    Il est donc conseillé de fournir soi-même les jars d'une autre implémentation, telles que WoodStox ou Apache Xerces.

    Note : Si vous utilisez Xerces et Tomcat, il se peut que vous ayez des ClassCastException au chargement de votre applications, ceux-ci sont dus à priori à un conflit entre l'implémentation utilisée par Tomcat et celles que vous fournissez. Dans ce cas, utilisez plutôt woodstox.

  9. #9
    Expert Confirmé Sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    avril 2002
    Messages
    13 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : avril 2002
    Messages : 13 197
    Points : 19 131
    Points
    19 131

    Par défaut

    Une petite coquille s'est glissé dans cette Q/R : http://java.developpez.com/faq/xml/?page=sax#parserSax


    Code :
    annuaire = new LinkedList<Personne>();
    Les crochets des Generics ne sont pas correctement encodés (on lit &lt;Personne&gt; à la place de <Personne>).

    Code :
    annuaire = new LinkedList<Personne>();
    a++

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •