[ http://issues.apache.org/jira/browse/TOMAHAWK-493?page=comments#action_12434384 ] Guy Coleman commented on TOMAHAWK-493: --------------------------------------
Could a committer have a look at this issue? It's a simple fix.. > detailStamp facet in the last row not decoded/validated/updated > --------------------------------------------------------------- > > Key: TOMAHAWK-493 > URL: http://issues.apache.org/jira/browse/TOMAHAWK-493 > Project: MyFaces Tomahawk > Issue Type: Bug > Affects Versions: 1.1.2 > Reporter: Val Blant > > There is a problem with the state saving algorithm in > org.apache.myfaces.component.html.ext.HtmlDataTable. setRowIndex(int) method > saves the state of the component in the context of the previous index and > then retrieves the appropriate state for the component in the context of the > current index. This ensures that components will have appropriate values for > each row before doing the work for any given phase. > The problem is that this algorithm will never store the state of the very > last row on the current page. This can be easily verified if you put some > input fields into the detailStamp facet, expand the last row on the page, > update a value and do something to cause a postback. The values in the facet > will revert back to what they were before and the model will not be updated. > The fix to this is simple: > In processDetails() method, after this line: > "process(context,facet,processAction);" put: > if ( rowIndex == (last - 1) ) { > Set set = new HashSet(); > set.add(facet); > hidableRowStates.put( > > getClientId(FacesContext.getCurrentInstance()), > > saveDescendantComponentStates(set.iterator(),false)); > } > This if-statement defines the special case that stores the state of the facet > in the last row on the page. -- 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
