He buscado por media web y no encuentro solución. El tema es el siguiente:
Genero una respuesta XML desde un servlet:
Código java:
Ver original
protected void doPost(HttpServletRequest request, HttpServletResponse response) response.setContentType("text/xml"); response.setHeader("Cache-Control", "no-cache"); out.write("<?xml version=\"1.0\" encoding=\"UTF-8\"?>"); out.write("<personas>"); out.write("<persona code=\"001\">"); out.write("<nombre>Marito</nombre>"); out.write("<apellido>Cares</apellido>"); out.write("<edad>20</edad>"); out.write("<sexo>M</sexo>"); out.write("</persona>"); out.write("</personas>"); response.sendRedirect("/ConectaBD/lectorXML.jsp"); }
Y quiero leer esos valores (por el momento ficticios... en realidad los llamo desde una BD) con JavaSript para llenar cierta tabla o algo.
El problema que tengo es que... no se como leer. Como rescatar el archivo XML generado para luego parsearlo.
Tengo entendido que es de esta manera (lo que tengo en lectorXML.jsp):
Código Javascript:
Ver original
function leyendoXML(){ if (window.DOMParser){ try{ parser=new DOMParser(); xmlDoc=parser.parseFromString(text,"text/xml"); /*Y en este momento se cuelga, porque no tengo la variable "text", que debería ser la respuesta que me envía el servlet*/ }catch(e){ alert(e.toString()); } }else /* Internet Explorer*/{ xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); xmlDoc.async="false"; xmlDoc.loadXML(text); } /*Ahora escribo los datos con cierta lógica*/
Lo más cercano a una solución que he encontrado, es [URL="http://www.java-tips.org/java-me-tips/midp/sending-data-to-servlet-and-getting-the-response.html"]esta[/URL] pero, no me sirve.
Muchas Gracias!