Bonjour, je suis en train de développer une application lourde dont l'une des fonctions et d'analysé le contenu d'une page html et d'en vérifier sa validité au W3C.
Dans un premier temps je charge le contenu d'une page dont je donne l'adresse puis je l'enregistre dans un fichier html temporaire pour l'analyser.
Pour cela j'utilise xerces dont voici le code que j'utilise (pour le moment)
1 2 3 4
| DOMParser dp = new DOMParser();
dp.setFeature("http://xml.org/sax/features/validation",false);
dp.setFeature("http://apache.org/xml/features/dom/include-ignorable-whitespace",false);
dp.parse("test.html"); |
Ma page de test.
1 2 3 4 5 6 7
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head><title>Titre</title></head>
<body style="text-align:center; background-color:#000">
<a href="lienr"><img src="/design/index.png" style="border:none"/></a>
</body>
</html> |
Le soucis est que lorsque j'ai la ligne du doctype j'ai cette erreur :
java.io.IOException: Server returned HTTP response code: 503 for URL: http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd
Alors que j'arrive à télécharger la dtd quand j'utilise mon navigateur web.
Si je retire cette ligne pour la dtd je peux facilement parser ma page web et obtenir les infos que je veux.
Partager