Pafu, I couldn't understand your data, but you do understand that when
an action request is made to faces in a portlet, the object inside of
the external context changes from an actionRequest to a renderRequest,
correct?
Therefore, when you interact with one of th portlets (and depending on
the code you use), you may well see one more request/response object
then you would expect. You should NOT however have an additional faces
context. At least not with the bridge in myfaces. If you are, it's
possible you're using another bridge which creates a new context between
the execute and render phases of the lifecycle.
Scott
Pfau, Oliver wrote:
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)
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 ?