Problema:
Al analizar un archivo xml mediante Stax, aparece el siguiente mensaje de error:
Excepción en el hilo «principal» javax.xml.stream.XMLStreamException: ParseError en [row,col]:[86,11]
Mensaje: Se espera una cotización abierta para el atributo «{1}» asociado con un tipo de elemento «type_id».
en com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl.next
(XMLStreamReaderImpl.java:594)
en com.sun.xml.internal.stream.XMLEventReaderImpl.nextEvent
(XMLEventReaderImpl.java:85)
en Main.main (Main.java:49)
Mensaje: Se espera una cotización abierta para el atributo «{1}» asociado con un tipo de elemento «type_id».
en com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl.next
(XMLStreamReaderImpl.java:594)
en com.sun.xml.internal.stream.XMLEventReaderImpl.nextEvent
(XMLEventReaderImpl.java:85)
en Main.main (Main.java:49)
El problema desaparece cuando se elimina la siguiente línea DOCTYPE:
<!DOCTYPE bugzilla SYSTEM "https://bugs.eclipse.org/bugs/bugzilla.dtd">
|
Solución:
inputFactory.setProperty(XMLInputFactory.SUPPORT_DTD, false); |
Esto establece la propiedad para solicitar procesadores que no admitan DTD.
Referencia: http://download.oracle.com/javase/6/docs/api/javax/xml/stream/XMLInputFactory.html