El codigo que estoy usando es el siguiente.
Código Javascript:
Ver original
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); try{ DocumentBuilder builder = factory.newDocumentBuilder(); DOMImplementation implementation = builder.getDOMImplementation(); Document document=implementation.createDocument(null, "xml", null); // Document document=implementation.; Element raiz = document.createElement("Correos");// creamos el elemento raiz Element elemento = document.createElement("Correo");//creamos un nuevo elemento document.setXmlVersion("1.0");// asignamos la version de nuestro XML document.getDocumentElement().appendChild(raiz); //pegamos la raiz al documento raiz.appendChild(elemento); //pegamos el elemento hijo a la raiz elemento.appendChild(text); // Source source = new DOMSource(document); String datos=""; Result console= new StreamResult(System.out); Result result = new StreamResult(new java.io.File("resultado.xml"));//nombre del archivo Transformer transformer = TransformerFactory.newInstance().newTransformer(); transformer.transform(source, result); transformer.transform(source, console); //transformer.t // DocumentBuilder db = new DocumentBuilder(); DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); DocumentBuilder db = dbf.newDocumentBuilder(); //db.parse(datos) ; String xmlX =("<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<xml>\n<Correos>\n<Correo>[email protected]</Correo>\n</Correos>\n</xml>"); db.parse(xmlX); //document; }catch(Exception e){ System.err.println("Error:" +e); }
Como veran en la linea 31 estoy cableando y pasando directamente el xml mediante un string.
El xml que estoy probando lo probe en varios navegadores y no me dice que este mal formado, probe con y sin \n y me da error igual.
Basicamente lo que necesito hacer es crear una variable del tipo "Document" que es lo que retorna el metodo que quiero modificar.
En el metodo original, no en el codigo de arriba codigo, ese codigo es otro proyecto que estoy usando para debugear, algo mucho mas grande, hay un metodo que devuelve un Document mediante
Metodo original(esta adentro de try catch)
Código Javascript:
Ver original
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); DocumentBuilder db = dbf.newDocumentBuilder(); InputStream input = HTMLTools.inputStream_GET(url, timeoutMS); InputStreamReader reader = new InputStreamReader(input, ENCODING_UTF8); InputSource inSrc = new InputSource(reader); inSrc.setEncoding(ENCODING_UTF8); return db.parse(inSrc);
Yo necesito pasarle un XML que yo creo localmente a la variable db; el XML ya lo logro obtener pero no comprendo porque no me lo acepta ni entiendo cual es la funcion del metodo parse de la variable db, se que obtiene un Document, pero hasta ahí no mas.
¿Alguien me podría aclarar por favor que es lo que estoy haciendo mal?
Gracias.