Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
Description
In partial state saving when you add a component it calls com.sun.faces.context.StateContext.AddRemoveListener.handleAddEvent(). That method in turn ends up calling getClientId on the added component (in ComponentStruct.absorbComponent). When the view is restored it uses this added client id to look up the saved state in the state map.
The reason this isn't working is that the added component is returning "outputText2" from getClientId, but the real client id is "pt1:outputText2". The reason this is happening is that UIXComponentBase.setParent is publishing the addToViewEvent before clearing any cached client id.