Sto cercando di analizzare un documento HTML con il DOCTYPE dichiarato di utilizzare la DTD transitoria come segue:!DTD errore di download durante l'analisi documento XHTML in XOM
< DOCTYPE HTML PUBLIC "- // W3C // DTD XHTML 1.0 Transitional // EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >
Quando faccio Builder.build sul documento, ottengo la seguente eccezione:
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)
Se rimuovo la dichiarazione del tipo di documento, viene analizzata correttamente. Posso scaricare correttamente il dtd dal mio browser, che mi dice che l'URL è valido. Non voglio rimuovere la dichiarazione del tipo di documento. È un modo dire al costruttore di non scaricare il dtd o fornirlo con un dtd alternativo?
State parsing del codice HTML da 'selvaggio' o avete creato/avere il controllo sulle pagine che stai parsing? – lucas
Ho il controllo sull'html che sto analizzando, quindi per lo meno posso rimuovere la dichiarazione doctype. Ma sto cercando di attenermi alle buone pratiche e mantenere la dichiarazione del doctype. – Bala