Erreurs de lecture d'un fichier xml depuis web
Salut, j'ai écris un code java qui lit un document xml depuis internet, le voilà:
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 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
| package maj;
import java.io.File;
import org.w3c.dom.Document;
import java.io.IOException;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.parsers.DocumentBuilderFactory;
import org.xml.sax.SAXException;
import java.util.ArrayList;
import java.net.URL;
import java.net.URLConnection;
import java.io.InputStream;
import org.w3c.dom.Element;
import java.util.List;
import java.util.Iterator;
import org.jdom.input.SAXBuilder;
import org.jdom2.JDOMException;
import java.util.Collections;
import java.net.MalformedURLException;
public class A {
private String xmlPath = "Lien vers fichier XML";
//Document xml
private Document xmlDocument = null;
private ArrayList<String> getVersions(){
ArrayList<String> versions = new ArrayList<String>();
try {
URL xmlUrl = new URL(xmlPath);
//On ouvre une connections sur la page
URLConnection urlConnection = xmlUrl.openConnection();
urlConnection.setUseCaches(false);
//On se connecte sur cette page
urlConnection.connect();
//On récupère le fichier XML sous forme de flux
InputStream stream = urlConnection.getInputStream();
SAXBuilder sxb = new SAXBuilder();
//On crée le document xml avec son flux
try {xmlDocument = sxb.build(stream);
} catch (JDOMException e) {e.printStackTrace();
} catch (IOException e) {e.printStackTrace();}
//On récupère la racine
Element racine = xmlDocument.getRootElement();
//On liste toutes les versions
List listVersions = racine.getChildren("version");
Iterator iteratorVersions = listVersions.iterator();
//On parcourt toutes les versions
while(iteratorVersions.hasNext()){
Element version = (Element)iteratorVersions.next();
Element elementNom = version.getChild("nom");
versions.add(elementNom.getText());
}
//On trie la liste
Collections.sort(versions);
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return versions;
}
} |
Les erreurs que j'arrive pas à les résoudre sont:
Code:
1 2
| import org.jdom.input.SAXBuilder;
import org.jdom2.JDOMException; |
the import org.jdom cannot be resolved, j'ai essayé de télécharger jdom et je l'ai ajouté comme external jar mais ça n'a pas marché.
En plus, les méthodes getChildren(), getChild(), getRootElement() et getText() sont indéfinis pour le type Element, voilà je compprends que ce qui manque dans mon code et j'aime bien que vous m'aidiez, merci pour vos réponses.
PS: c'est presque le meme code que celui-ci : http://baptiste-wicht.developpez.com...s/java/update/ , j'ai ajouté ds import