protected void processMimeResponseRequest(PortletRequest request, MimeResponse response, String hstDispUrl, HstPortletResponseState portletResponseState) throws PortletException, IOException { PortletRequestDispatcher dispatcher = this.portletContext.getRequestDispatcher(hstDispUrl); if (dispatcher != null) { dispatch(dispatcher, request, response, true); portletResponseState.flush(); } }
@Override public void doHeaders(RenderRequest request, RenderResponse response) { String dispatchPage = getDispatchPage(request, HST_HEADER_PAGE_PARAM_NAME, defaultHeaderPage); if (!PortletConfigUtils.isEmpty(dispatchPage)) { try { dispatch(getPortletContext().getRequestDispatcher(dispatchPage), request, response, true); } catch (Exception e) { Logger logger = HstServices.getLogger(LOGGER_CATEGORY_NAME); if (logger != null) { logger.warn("Failed to dispatch page - {} : {}", dispatchPage, e); } } } }
@Override public void doHelp(RenderRequest request, RenderResponse response) throws PortletException, IOException { String dispatchPage = getDispatchPage(request, HST_HELP_PAGE_PARAM_NAME, defaultHelpPage); if (!PortletConfigUtils.isEmpty(dispatchPage)) { try { request.setAttribute(ContainerConstants.HST_RESET_FILTER, Boolean.TRUE); dispatch(getPortletContext().getRequestDispatcher(dispatchPage), request, response, true); } catch (Exception e) { Logger logger = HstServices.getLogger(LOGGER_CATEGORY_NAME); if (logger != null) { logger.warn("Failed to dispatch page - {} : {}", dispatchPage, e); } } } else { processRequest(request, response); } }
protected void processActionResponseState(ActionRequest request, ActionResponse response, String hstDispUrl, HstPortletResponseState portletResponseState) throws PortletException, IOException { PortletRequestDispatcher dispatcher = getPortletContext().getRequestDispatcher(hstDispUrl); if (dispatcher != null) { dispatch(dispatcher, request, response, true); // write out Cookies to ActionResponse portletResponseState.flush(); String redirectLocationUrl = portletResponseState.getRedirectLocation(); if (redirectLocationUrl != null) { if (portletResponseState.isRenderRedirect()) { response.setRenderParameter(HST_PATH_PARAM_NAME + request.getPortletMode().toString(), redirectLocationUrl); } else { response.sendRedirect(redirectLocationUrl); } } } else { throw new PortletException("HST URL Dispatcher is not found: " + hstDispUrl); } }