我用我的应用程序Java servlet和JSP,我需要读取远程XML文件并妥善它渲染成HTML和网页上显示的...什么是用来阅读的过程?我应该使用该技术HttpURLConnection类类读取XML文件的内容,或者有一些其他的方式? 而且,如果我使用servlet作为一个控制器和JSP作为视图,这将是Servlet和JSP在这一过程中的责任?应该SERVLET只是读取整个XML文件,然后只是通过读取输出到JSP将只打印使用XSL例如它和呈现正确?

我真的希望从任何人谁可以帮助听见,

使用亲切的问候

有帮助吗?

解决方案

JSP没有责任在这里。只是使用XSL转换XML在servlet和它的结果直接写入响应的OutputStream

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);
}

不要忘记用Content-Type设置HttpServletResponse#setContentType(),否则web浏览器可以处理它以明文形式。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top