static void doAction(HttpServletRequest request, HttpServletResponse response, PortletHolder portletHolder, GenericPortlet portlet)
throws WindowStateException, PortletModeException, PortletException, IOException {
TpPortletContext TpPortletContext = (TpPortletContext) portlet.getPortletContext();
TpActionRequest actionRequest = new TpActionRequest(portletHolder,request,TpPortletContext);
TpActionResponse actionResponse = new TpActionResponse(portletHolder,response);
setWindowState(request, portletHolder);
setPortletMode(request, portletHolder);
setPortletParameters(request, portletHolder, actionRequest);
try {
portlet.processAction(actionRequest, actionResponse);
if (actionResponse.isRedirected())
response.sendRedirect(actionResponse.getRedirection());
} catch (IllegalStateException ise) {
actionResponse.cancelRedirected();
}
portletHolder.setActionResponse(actionResponse);
}