JSP 在这里不承担任何责任。只需使用 XSL 转换 servlet 中的 XML 并将其结果直接写入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
using HttpServletResponse#setContentType()
,否则网络浏览器可能会将其作为明文处理。