Estoy tratando de analizar un documento HTML con el tipo de documento declarado utilizar el DTD de transición de la siguiente manera:!DTD error de descarga al analizar documento XHTML en XOM
< DOCTYPE html PUBLIC "- // W3C // DTD XHTML 1.0 Transicional // eN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >
Cuando hago Builder.build en el documento, me sale el siguiente excepción:
java.io.IOException: Server returned HTTP response code: 503 for URL: http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1305)
at org.apache.xerces.impl.XMLEntityManager.setupCurrentEntity(Unknown Source)
at org.apache.xerces.impl.XMLEntityManager.startEntity(Unknown Source)
at org.apache.xerces.impl.XMLEntityManager.startDTDEntity(Unknown Source)
at org.apache.xerces.impl.XMLDTDScannerImpl.setInputSource(Unknown Source)
at org.apache.xerces.impl.XMLDocumentScannerImpl$DTDDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)
at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at nu.xom.Builder.build(Builder.java:1127)
at nu.xom.Builder.build(Builder.java:1019)
Si quito la declaración del tipo de documento, analiza muy bien. Puedo descargar con éxito el dtd de mi navegador, lo que me indica que la url es válida. No quiero eliminar la declaración del tipo de documento. ¿Hay alguna forma en que el indique al desarrollador que no descargue el dtd o que lo proporcione con un dtd alternativo?
¿Está análisis de HTML a partir de 'la naturaleza' o qué creó/tienen control sobre las páginas que estés análisis sintáctico? – lucas
Tengo control sobre el html que estoy analizando, por lo que al menos puedo eliminar la declaración del tipo de documento. Pero trato de seguir las buenas prácticas y conservar la declaración del tipo de documento. – Bala