我正在使用JSF 1.2和Seam 2.2.2
我是否可以在代码中渲染页面并将输出保存到文件而不是将其发送到客户端。
// Trind
答案 0 :(得分:4)
最简单的方法就是自己发送一个HTTP请求(在localhost上执行时应该特别便宜)。
InputStream input = new URL("http://localhost:8080/context/page.jsf").openStream();
// ...
如果您想在与当前客户端相同的会话中请求它,并且您的服务器接受URL重写,请改用以下URL。
InputStream input = new URL("http://localhost:8080/context/page.jsf;jsessionid=" + session.getId()).openStream();
// ...
或者,如果您的服务器不接受URL重写,但仅接受cookie,则使用以下方法。
URLConnection connection = new URL("http://localhost:8080/context/page.jsf").openConnection();
connection.setRequestProperty("Cookie", "JSESSIONID=" + session.getId());
InputStream input = connection.getInputStream();
// ...