Downloading file and closing dialog
-----------------------------------
Key: TRINIDAD-813
URL: https://issues.apache.org/jira/browse/TRINIDAD-813
Project: MyFaces Trinidad
Issue Type: Bug
Components: Components
Affects Versions: 1.0.3-core
Environment: Windows XP, MyFaces 1.1.5, Jetty 6.1.5, Trinidad 1.0.3,
JDK 1.5
Reporter: Oscar Reitsma
Priority: Minor
The required functionality is as follows:
- In a dialog, the user selects parameters report to be generated.
- The user clicks OK, and the report is generated, and a file download is
initiated
- the dialog is closed
When using the below implementation, the following exception is thrown, when a
call is made to:
RequestContext.getCurrentInstance().returnFromDialog(null,
null);
Caused by: java.lang.IllegalStateException: STREAM
at org.mortbay.jetty.Response.getWriter(Response.java:583)
at
javax.servlet.ServletResponseWrapper.getWriter(ServletResponseWrapper.java:122)
at
org.apache.myfaces.trinidadinternal.renderkit.core.CoreRenderKit._getHtmlWriter(CoreRenderKit.java:744)
at
org.apache.myfaces.trinidadinternal.renderkit.core.CoreRenderKit.returnFromDialog(CoreRenderKit.java:282)
at
org.apache.myfaces.trinidadinternal.context.DialogServiceImpl.returnFromDialog(DialogServiceImpl.java:173)
at
org.apache.myfaces.trinidadinternal.context.RequestContextImpl.returnFromDialog(RequestContextImpl.java:122)
implementation:
in the jspx of the dialog:
<tr:commandButton text="OK"
action="#{reportSelection.actionProcessReports}" partialSubmit="false" >
<tr:fileDownloadActionListener
method="#{reportSelection.downloadFile}"
contentType="#{reportSelection.contentType}"
filename="#{reportSelection.reportFilename}"/>
</tr:commandButton>
The bean:
public void downloadFile(FacesContext context, OutputStream out) throws
IOException {
// Here the report is generated, and written to the given
OutputStream
downloadReport(selectedReport, out);
out.flush();
}
public String actionProcessReports() {
RequestContext.getCurrentInstance().returnFromDialog(null,
null);
return "downloadComplete";
}
Using the above implementation the download of the report completes as
expected, but the dialog is not closed.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.