Pregunta

Estoy usando servlets Java y JSP en mi solicitud y me necesita leer el archivo XML remoto y hacerla correctamente en HTML y mostrar en una página web ... ¿Qué es la tecnología utilizada para el proceso de la lectura? ¿Debo usar HttpURLConnection clase para leer el contenido del archivo XML o hay alguna otra manera? Y también, si uso de servlets como controlador y JSP como una vista, ¿cuál sería la responsabilidad de servlet y JSP en este proceso? ¿Debería servlet acaba de leer todo el archivo XML y luego sólo tiene que pasar la salida de lectura a JSP que se acaba de imprimir y procesa de forma adecuada utilizando XSL por ejemplo?

Realmente espero tener noticias de cualquier personas que pueden ayudar,

Un saludo

¿Fue útil?

Solución

JSP no tiene responsabilidad aquí. Sólo transformar el XML en el servlet utilizando XSL y escribir su resultado directamente a la OutputStream de la respuesta.

StreamSource xml = new StreamSource(new URL("http://external.com/file.xml").openStream());
StreamSource xsl = new StreamSource(new File("/path/to/file.xsl"));
StreamResult out = new StreamResult(response.getOutputStream());

try {
    Transformer transformer = TransformerFactory.newInstance().newTransformer(xsl);
    transformer.transform(xml, out);
} catch (TransformerException e) {
    throw new ServletException("Transforming XML failed.", e);
}

No se olvide de establecer el Content-Type usando HttpServletResponse#setContentType(), de lo contrario el navegador web puede manejarlo como texto sin formato.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top