En mi archivo XML Tengo algunas entidades como ’
Usando JDOM analizar el archivo XML con DTD externa que no ha sido declarada en el fichero XML
Así que he creado una etiqueta DTD para mi documento XML para definir estos entidades. A continuación se muestra el código de Java utilizado para leer el archivo XML.
SAXBuilder builder = new SAXBuilder();
URL url = new URL("http://127.0.0.1:8080/sample/subject.xml");
InputStream stream = url.openStream();
org.jdom.Document document = builder.build(stream);
Element root = document.getRootElement();
Element name = root.getChild("name");
result = name.getText();
System.err.println(result);
¿Cómo puedo cambiar el código Java para recuperar una DTD a través de HTTP para permitir el análisis de mi documento XML a estar libre de errores?
Ejemplo simplificado del documento xml.
<main>
<name>hello ‘ world ’ foo & bar </name>
</main>
Entidades debe ser declarado antes de que puedan ser utilizados. Si está utilizando referencias de entidad que no han sido declaradas (ya sea dentro del archivo o con una referencia a una DTD externa), tiene un archivo XML no válido. –
De hecho. Mi problema es inyectar la ruta a mi DTD en el xml en tiempo de ejecución, ya que no se hace referencia al dtd dentro del documento xml. La DTD reside en un servidor remoto al que se puede acceder a través de http. –