Hi,
I have 2 JSF
portlets on a portal page in liferay using myFaces. Here is one server roundtrip
after an user action where the portlet name and then the hash code of the
FacesContext is printed:
Navi
Portlet
11602901
: Before Phase: RESTORE_VIEW(1)
Details Portlet 11602901 : Before Phase:RESTORE_VIEW(1)
Details Portlet 11602901 : After Phase RESTORE_VIEW(1)
Navi Portlet 11602901 : After Phase: RESTORE_VIEW(1)
Navi Portlet 11602901 : Before Phase: APPLY_REQUEST_VALUES(2)
Details Portlet 11602901 : Before Phase:APPLY_REQUEST_VALUES(2)
Details Portlet 11602901 : After Phase APPLY_REQUEST_VALUES(2)
Navi Portlet 11602901 : After Phase: APPLY_REQUEST_VALUES(2)
Navi Portlet 11602901 : Before Phase: PROCESS_VALIDATIONS(3)
Details Portlet 11602901 : Before Phase:PROCESS_VALIDATIONS(3)
Details Portlet 11602901 : After Phase PROCESS_VALIDATIONS(3)
Navi Portlet 11602901 : After Phase: PROCESS_VALIDATIONS(3)
Navi Portlet 11602901 : Before Phase: UPDATE_MODEL_VALUES(4)
Details Portlet 11602901 : Before Phase:UPDATE_MODEL_VALUES(4)
Details Portlet 11602901 : After Phase UPDATE_MODEL_VALUES(4)
Navi Portlet 11602901 : After Phase: UPDATE_MODEL_VALUES(4)
Navi Portlet 11602901 : Before Phase: INVOKE_APPLICATION(5)
Details Portlet 11602901 : Before Phase:INVOKE_APPLICATION(5)
Details Portlet 11602901 : After Phase INVOKE_APPLICATION(5)
_____refreshSelectedPD invoked
Navi Portlet 11602901 : After Phase: INVOKE_APPLICATION(5)
Navi Portlet 11602901 : Before Phase: RENDER_RESPONSE(6)
Details Portlet 11602901 : Before Phase:RENDER_RESPONSE(6)
Details Portlet 11602901 : After Phase RENDER_RESPONSE(6)
Navi Portlet 11602901 : After Phase: RENDER_RESPONSE(6)
Navi Portlet 12599994 : Before Phase: RENDER_RESPONSE(6)
Details Portlet 12599994 : Before Phase:RENDER_RESPONSE(6)
Details Portlet 12599994 : After Phase RENDER_RESPONSE(6)
Navi Portlet 12599994 : After Phase: RENDER_RESPONSE(6)
Navi Portlet 19377347 : Before Phase: RENDER_RESPONSE(6)
Details Portlet 19377347 : Before Phase:RENDER_RESPONSE(6)
_____refreshSelectedPD invoked
Details Portlet 19377347 : After Phase RENDER_RESPONSE(6)
Navi Portlet 19377347 : After Phase: RENDER_RESPONSE(6)
Details Portlet 11602901 : Before Phase:RESTORE_VIEW(1)
Details Portlet 11602901 : After Phase RESTORE_VIEW(1)
Navi Portlet 11602901 : After Phase: RESTORE_VIEW(1)
Navi Portlet 11602901 : Before Phase: APPLY_REQUEST_VALUES(2)
Details Portlet 11602901 : Before Phase:APPLY_REQUEST_VALUES(2)
Details Portlet 11602901 : After Phase APPLY_REQUEST_VALUES(2)
Navi Portlet 11602901 : After Phase: APPLY_REQUEST_VALUES(2)
Navi Portlet 11602901 : Before Phase: PROCESS_VALIDATIONS(3)
Details Portlet 11602901 : Before Phase:PROCESS_VALIDATIONS(3)
Details Portlet 11602901 : After Phase PROCESS_VALIDATIONS(3)
Navi Portlet 11602901 : After Phase: PROCESS_VALIDATIONS(3)
Navi Portlet 11602901 : Before Phase: UPDATE_MODEL_VALUES(4)
Details Portlet 11602901 : Before Phase:UPDATE_MODEL_VALUES(4)
Details Portlet 11602901 : After Phase UPDATE_MODEL_VALUES(4)
Navi Portlet 11602901 : After Phase: UPDATE_MODEL_VALUES(4)
Navi Portlet 11602901 : Before Phase: INVOKE_APPLICATION(5)
Details Portlet 11602901 : Before Phase:INVOKE_APPLICATION(5)
Details Portlet 11602901 : After Phase INVOKE_APPLICATION(5)
_____refreshSelectedPD invoked
Navi Portlet 11602901 : After Phase: INVOKE_APPLICATION(5)
Navi Portlet 11602901 : Before Phase: RENDER_RESPONSE(6)
Details Portlet 11602901 : Before Phase:RENDER_RESPONSE(6)
Details Portlet 11602901 : After Phase RENDER_RESPONSE(6)
Navi Portlet 11602901 : After Phase: RENDER_RESPONSE(6)
Navi Portlet 12599994 : Before Phase: RENDER_RESPONSE(6)
Details Portlet 12599994 : Before Phase:RENDER_RESPONSE(6)
Details Portlet 12599994 : After Phase RENDER_RESPONSE(6)
Navi Portlet 12599994 : After Phase: RENDER_RESPONSE(6)
Navi Portlet 19377347 : Before Phase: RENDER_RESPONSE(6)
Details Portlet 19377347 : Before Phase:RENDER_RESPONSE(6)
_____refreshSelectedPD invoked
Details Portlet 19377347 : After Phase RENDER_RESPONSE(6)
Navi Portlet 19377347 : After Phase: RENDER_RESPONSE(6)
It seems that there
are 3 FacesContext involved. I am not understanding this. A FacesContext for
each portlet would be clear, but why there are 3 different instances ? Has
somebody a hint for me ?

