XSL - Obtenir la ligne d'erreur d'encodage

XSL - Obtenir la ligne d'erreur d'encodage - XML/XSL - Programmation

Marsh Posté le 29-01-2007 à 14:39:18    

Voilà j'effectue une batterie de test sur un (gros) fichier.
Tout se passe bien sauf quand l'encodage spécifié par le XML n'est pas en adéquation avec le corps du fichier.
Mon test est juste en mesure de dire que qu'un des caractères ne répond pas à la norme d'encodage spécifié.
Mais j'aurais surtout besoin de connaitre la ligne ou le noeud en erreur !!!
J'arrive a lancer les autre tests malgrès cette erreur d'encodage en passant en Java le fichier XML dans un fileReader.
L'idéal serait d'avoir LA fonction en xsl me permettant de connaitre précisement où se trouve cette erreur.
 
Merci d'avance.

Reply

Marsh Posté le 29-01-2007 à 14:39:18   

Reply

Marsh Posté le 30-01-2007 à 18:39:19    

Je n'ai pas compris grand chose mais ça dépend du parser que tu utilises, et l'étape de parsing a lieu avant la transformation donc une stylesheet ne te sera d'aucune utilité.
 
Avec Xerces2 il y a moyen de préciser un error handler (DocumentBuilder.setErrorHandler()) et de récupérer une SAXParseException dans laquelle on trouve un getColumnNumber() et getLineNumber(). Il y a aussi la méthode DocumentBuilder.parse() qui lance une SAXException en cas d'erreur, et il n'est pas impossible que ce soit en réalité une SAXParseException en cas d'erreur de parsing. A tester avec un instanceof par exemple.

Reply

Sujets relatifs:

Leave a Replay

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