private void updateBeanValueForRowRenderer ( final WTableRowRenderer rowRenderer , final UIContext rowContext , final Class < ? extends WComponent > expandRenderer ) { Container expandWrapper = ( Container ) rowRenderer . getExpandedTreeNodeRenderer ( expandRenderer ) ; if ( expandWrapper == null ) { return ; } // The actual component is wrapped in a renderer wrapper, so we have to fetch it from that WComponent expandInstance = expandWrapper . getChildAt ( 0 ) ; UIContextHolder . pushContext ( rowContext ) ; try { // Will apply updates to the "bean" returned by the model for this expanded renderer (ie // getValueAt(rowIndex, -1)) WebUtilities . updateBeanValue ( expandInstance ) ; } finally { UIContextHolder . popContext ( ) ; } }
Update the expandable row renderer .