You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@myfaces.apache.org by "sean schofield (JIRA)" <my...@incubator.apache.org> on 2005/06/01 01:06:59 UTC

[jira] Commented: (MYFACES-115) x:dataTable and x:pageScroller not always working fine together

     [ http://issues.apache.org/jira/browse/MYFACES-115?page=comments#action_66693 ]
     
sean schofield commented on MYFACES-115:
----------------------------------------

This sounds like it could be a duplicate of MYFACES-228.  Does your dataTable have editable components in it?  Presumably it does in which case I would like to close this as a duplicate (even though it was the original report) because there is an extensive commentary on that issue.

> x:dataTable and x:pageScroller not always working fine together
> ---------------------------------------------------------------
>
>          Key: MYFACES-115
>          URL: http://issues.apache.org/jira/browse/MYFACES-115
>      Project: MyFaces
>         Type: Bug
>     Versions: Nightly Build
>  Environment: tomcat 5.0.28
>     Reporter: Alessandro Polverini

>
> This is an excerpt from myfaces-dev discussion between me and others.
> I post it here so it does not get lost.
> The objective is to use a x:dataScroller to browse throug a x:dataTable with a request scope backing bean.
> ---
> I tried to set preserveDataModel to true to avoid the x:saveState declaration, but this would not work (in my case, at least).
> I try to explain my situation to better understand the behaviour: I have a simple form with some search parameters, when the user submits it, the backing bean (request scope) is populated with results and I show and paginate through them using x:dataTable and x:dataScroller.
> The only way I found to make it work well is:
> - set preserveDataModel to false (or to not put the attribute completely)
> - use a x:saveState on #{bean.results}
> Whithout doning this, I can see only the first page of results and every other action (for example switch to page #2) the datas are lost and no more rows are displayed.
> The problem also occurs if I *both* use saveState and preserveDataModel, maybe because the partially conflicts in their operation?
> So, I deduce that preserveDataModel does not the very same thing of saveState, and maybe the idea of Sean (see MYFACES-98) is useful anyway?
> Or maybe preserveDataModel has a bug (or a limitation) and should be fixed?
> I would be interested to better understand this issue.
> ---
> I don't think there's a bug in the implementation of preserveDataModel.
> It's quite understandable that if you are using pageScroller together with the dataTable, you have to take care of saving the data yourself.
> Of course, pageScroller could have its own preserveDataModel or something similar, but if it's used the dataTable shouldn't anymore be responsible of saving the data. Maybe pagescroller could generate a warning if preserveDataModel is set to true in the data table or handle "remembering" the data or some other better implementation, but I don't see even the current implementation as a bug.
> ---
> > I don't understand well why preserveDataModel should not work 
> > if used with pageScroller. PageScroller is just a "normal" 
> > component providing pagination, what would differ if I 
> > implement it in my program instead of using it?
> > What I mean is: if the array is correctly restored for my 
> > application, why it should not work for pageScroller?
> Oh, the reason is simple. Since the preserveDataModel saves only what the dataTable displays, and pageScrollers divides the data into multiple pages, preserveDataModel happily remembers only the results displayed on the first page.
>  
> > Anyway, since they both are myfaces components, I expect them 
> > to correctly work together so a warning or something similar 
> > in the documentation would be welcome.
> I 100% agree with you there. Even better, pageScroller could "take over", force the preserveDataModel in the datatable to reset to false and/or have its own preserveDataModel.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira