[jira] Created: (TOMAHAWK-1230) Excel Export Control uses HTTP get request, which should avoid restore view phase, thus the DataTable will be unavailable.

View: New views
2 Messages — Rating Filter:   Alert me  

[jira] Created: (TOMAHAWK-1230) Excel Export Control uses HTTP get request, which should avoid restore view phase, thus the DataTable will be unavailable.

by My Faces - Dev mailing list :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Excel Export Control uses HTTP get request, which should avoid restore view phase, thus the DataTable will be unavailable.
--------------------------------------------------------------------------------------------------------------------------

                 Key: TOMAHAWK-1230
                 URL: https://issues.apache.org/jira/browse/TOMAHAWK-1230
             Project: MyFaces Tomahawk
          Issue Type: Bug
    Affects Versions: 1.1.6
         Environment: Any
            Reporter: Chris Hornsey


I was recently debugging the excelExport component and phaseListener.  A core requirement of this component is that the user clicks the link created by the component and the browser will send a get request to reopen the page.  The phase listener will fire on the restore view phase, and write the excel representation of the table to the response prior to the response being written to the client.

According to the JSF spec, if the JSF handler receives a get request from a client it should bypass recreating the component tree during the restore view phase and go directly to the render response phase since clearly nothing has changed in the view.  When this happens the phase listener will throw a null pointer exception due to the fact that the component can not be retrieved from the view since the view will not be recreated until the response is rendered.

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (TOMAHAWK-1230) Excel Export Control uses HTTP get request, which should avoid restore view phase, thus the DataTable will be unavailable.

by My Faces - Dev mailing list :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


     [ https://issues.apache.org/jira/browse/TOMAHAWK-1230?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Hazem Saleh resolved TOMAHAWK-1230.
-----------------------------------

    Resolution: Fixed

I resolved this after making the <s:exporterActionListener .../>.

> Excel Export Control uses HTTP get request, which should avoid restore view phase, thus the DataTable will be unavailable.
> --------------------------------------------------------------------------------------------------------------------------
>
>                 Key: TOMAHAWK-1230
>                 URL: https://issues.apache.org/jira/browse/TOMAHAWK-1230
>             Project: MyFaces Tomahawk
>          Issue Type: Bug
>    Affects Versions: 1.1.5, 1.1.6
>         Environment: Any
>            Reporter: Chris Hornsey
>            Assignee: Hazem Saleh
>
> I was recently debugging the excelExport component and phaseListener.  A core requirement of this component is that the user clicks the link created by the component and the browser will send a get request to reopen the page.  The phase listener will fire on the restore view phase, and write the excel representation of the table to the response prior to the response being written to the client.
> According to the JSF spec, if the JSF handler receives a get request from a client it should bypass recreating the component tree during the restore view phase and go directly to the render response phase since clearly nothing has changed in the view.  When this happens the phase listener will throw a null pointer exception due to the fact that the component can not be retrieved from the view since the view will not be recreated until the response is rendered.

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.