S2JSFからPDF
#S2JSF大前提なんだけど、全然関係ないんだよなぁ〜
JSFからPDFへリダイレクトの方法を探る・・・
FacesContext context = FacesContext.getCurrentInstance();
context.getExternalContext().redirect("hgoehoge.pdf");
streamで流したかったけど、仕方ないかなぁ〜
FacesContext context = FacesContext.getCurrentInstance(); HttpServletResponse res = (HttpServletResponse)context. getExternalContext().getResponse(); String fileName = null; File file = new File("hogehogeFile.file"); fileName = file.getName(); // バイナリモードの設定 res.setContentType("application/octet-stream; exts= bin,exe name="+fileName); //Content-Disposition設定 res.setHeader("Content-Disposition","attachment; filename="+fileName); res.setHeader("Content-Description","file download test"); //コネクションを確立し、バッファ転送する。 BufferedInputStream in = new BufferedInputStream(new FileInputStream(file)); BufferedOutputStream out = new BufferedOutputStream(res.getOutputStream()); int x; while( ( x = in.read() ) >= 0){ out.write(x); } in.close(); out.close();
こんな感じで良いのか・・・