Our application uses the same technique as discussed in this thread for
downloading files (see below).
This works, but if any messages (FacesMessage) are queued during the generation
of the downloaded content, they are not displayed to the user since the
facesContext.responseComplete() interrups the JSF lifecycle and the view is
never rerendered.
Is there a way to generate downloadable content, as below, but still refresh
the browser view, showing any pending messages? In many cases, we wish to
provide downloadable content, but also include warning messages (e.g.,
"Warning: generated report includes partially validated records").
Thanks!
| HttpServletResponse response =
(HttpServletResponse)facesContext.getExternalContext().getResponse();
| try {
| response.setContentType(contentType);
| response.setHeader( "Content-Disposition", "attachment; filename=\""
| + name + "\";");
| response.getOutputStream().write(fileData);
| response.setStatus(HttpServletResponse.SC_OK);
| response.getOutputStream().close();
| facesContext.responseComplete();
| } catch (IOException ex) {
| log.error("Error writing file data (#0 bytes) to response", ex,
fileData.length);
| }
|
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4124870#4124870
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4124870
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user