{
publicNS = pageNavigationalState.getPortletPublicNavigationalState(portletRequest.getWindowId());
}
PortletInvocationContext portletInvocationContext = context.createPortletInvocationContext(portletRequest.getWindowId(), pageNavigationalState);
ActionInvocation actionInvocation = new ActionInvocation(portletInvocationContext);
//
actionInvocation.setMode(mode);
actionInvocation.setWindowState(windowState);
actionInvocation.setNavigationalState(portletActionRequest.getWindowNavigationalState().getPortletNavigationalState());
actionInvocation.setPublicNavigationalState(publicNS);
actionInvocation.setInteractionState(portletActionRequest.getInteractionState());
actionInvocation.setForm(portletActionRequest.getBodyParameters() != null ? ParameterMap.clone(portletActionRequest.getBodyParameters()) : null);
//
return context.invoke(actionInvocation);
}
}