eyakat
Messages postés8Date d'inscriptionsamedi 20 juin 2009StatutMembreDernière intervention30 juin 2009
-
22 juin 2009 à 23:01
eyakat
Messages postés8Date d'inscriptionsamedi 20 juin 2009StatutMembreDernière intervention30 juin 2009
-
23 juin 2009 à 11:54
Bonsoir,
J'ai un problème d'exécution au niveau de mon code java pour lire un fichier xml
après de saisir le nom du fichier xml pour l'exécuter il m'affiche ces erreurs.
Exception in thread "main"
java.lang.IllegalArgumentException: InputStream cannot be nullat javax.xml.parsers.SAXParser.parse(Unknown Source)
public class ParcoursArbreSax extends DefaultHandler {
/** Parcours d'une arborescence XML
* @param fxml flot d'entrée XML
*/
public ParcoursArbreSax(InputStream isXml) {
super();
// création d'une instance d'API SAX
SAXParserFactory factory = SAXParserFactory.newInstance();
factory.setValidating(true);
// création d'un objet de parcours
SAXParser saxParser = null;
try {saxParser = factory.newSAXParser();}
catch (SAXException e) {}
catch (ParserConfigurationException e) {}
/** Traitement d'événements de type début du document */
public void startDocument() throws SAXException{
System.out.println("début du document:");
}
/** Traitement d'événements de type fin du document */
public void endDocument() throws SAXException{
System.out.println("fin du document:");
}
/** Traitement d'événements de type balise de début
* @param namespaceURI espace de noms
* @param sName nom de la balise (si espace de noms)
* @param qName nom de la balise (si pas d'espace de noms)
* @param attrs attributs de la balise
*/
public void startElement(String namespaceURI, String sName,
String qName, Attributes attrs) throws SAXException {
String eName = sName;
if ("".equals(eName)) eName = qName;
System.out.print("balise de début: " + eName);
if (attrs != null) {
// attributs
for (int i = 0; i < attrs.getLength(); i++) {
String aName = attrs.getLocalName(i);
if ("".equals(aName)) aName = attrs.getQName(i);
// nom
System.out.print(" " + aName + "="");
// valeur
System.out.print(attrs.getValue(i)+""");
}
}
System.out.println("");
}
/** Traitement d'événements de type balise de fin
* @param namespaceURI espace de noms
* @param sName nom de la balise (si espace de noms)
* @param qName nom de la balise (si pas d'espace de noms)
*/
public void endElement(String namespaceURI, String sName,
String qName) throws SAXException {
String eName = sName;
if ("".equals(eName)) eName = qName;
System.out.println("balise de fin: "+eName);
}
/** Traitement d'événements de type non-balise
* @param buf tableau contenant l'ensemble du texte analysé
* @param offset emplacement du texte entre deux balises
* @param len longueur du texte
*/
public void characters(char buf[], int offset, int len)
throws SAXException
{
String s = new String(buf, offset, len);
String st = s.trim();
if (st.length() > 0)
System.out.println(st);
}
}