Search in sources :

Example 11 with PortletRequest

use of javax.portlet.PortletRequest in project uPortal by Jasig.

the class PortletAdministrationHelper method getDelegateWindowId.

public IPortletWindowId getDelegateWindowId(ExternalContext externalContext, String fname) {
    final PortletRequest nativeRequest = (PortletRequest) externalContext.getNativeRequest();
    final PortletSession portletSession = nativeRequest.getPortletSession();
    return (IPortletWindowId) portletSession.getAttribute(RenderPortletTag.DEFAULT_SESSION_KEY_PREFIX + fname);
}
Also used : PortletRequest(javax.portlet.PortletRequest) PortletSession(javax.portlet.PortletSession) IPortletWindowId(org.apereo.portal.portlet.om.IPortletWindowId)

Example 12 with PortletRequest

use of javax.portlet.PortletRequest in project uPortal by Jasig.

the class PortletDelegationView method render.

/* (non-Javadoc)
     * @see org.springframework.web.servlet.View#render(java.util.Map, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
     */
@Override
public void render(Map<String, ?> model, HttpServletRequest request, HttpServletResponse response) throws Exception {
    final IPortletWindowId portletWindowId = (IPortletWindowId) model.get(DELEGATE_PORTLET_WINDOW_ID);
    final DelegationRequest delegationRequest = (DelegationRequest) model.get(DELEGATE_REQUEST);
    final PortletRequest portletRequest = (PortletRequest) request.getAttribute(Constants.PORTLET_REQUEST);
    final PortletResponse portletResponse = (PortletResponse) request.getAttribute(Constants.PORTLET_RESPONSE);
    final PortletDelegationDispatcher requestDispatcher = portletDelegationLocator.getRequestDispatcher(portletRequest, portletWindowId);
    if (requestDispatcher == null) {
        throw new IllegalArgumentException("No PortletDelegationDispatcher exists for portlet window id: " + portletWindowId);
    }
    this.logger.debug("Found delegation dispatcher for portlet window id {} - {}", portletWindowId, requestDispatcher);
    final DelegationResponse delegationResponse;
    final String phase = (String) request.getAttribute(PortletRequest.LIFECYCLE_PHASE);
    if (PortletRequest.RENDER_PHASE.equals(phase)) {
        final PortletOutputHandler portletOutputHandler = (PortletOutputHandler) model.get(DELEGATE_RENDER_OUTPUT_HANDLER);
        if (portletOutputHandler != null) {
            this.logger.debug("Delegating RenderRequest with custom Writer and {}", delegationRequest);
            delegationResponse = requestDispatcher.doRender((RenderRequest) portletRequest, (RenderResponse) portletResponse, delegationRequest, portletOutputHandler);
        } else {
            this.logger.debug("Delegating RenderRequest with default Writer and {}", delegationRequest);
            delegationResponse = requestDispatcher.doRender((RenderRequest) portletRequest, (RenderResponse) portletResponse, delegationRequest);
        }
    } else if (PortletRequest.RESOURCE_PHASE.equals(phase)) {
        this.logger.debug("Delegating ResourceRequest and {}", delegationRequest);
        delegationResponse = requestDispatcher.doServeResource((ResourceRequest) portletRequest, (ResourceResponse) portletResponse, delegationRequest);
    } else {
        throw new UnsupportedOperationException("Portlet lifecycle phase " + phase + " is not supported by the delegation view");
    }
    this.logger.debug("{}", delegationResponse);
}
Also used : PortletRequest(javax.portlet.PortletRequest) PortletResponse(javax.portlet.PortletResponse) DelegationResponse(org.apereo.portal.api.portlet.DelegationResponse) RenderRequest(javax.portlet.RenderRequest) PortletDelegationDispatcher(org.apereo.portal.api.portlet.PortletDelegationDispatcher) RenderResponse(javax.portlet.RenderResponse) IPortletWindowId(org.apereo.portal.portlet.om.IPortletWindowId) DelegationRequest(org.apereo.portal.api.portlet.DelegationRequest) PortletOutputHandler(org.apereo.portal.portlet.rendering.PortletOutputHandler)

Aggregations

PortletRequest (javax.portlet.PortletRequest)12 PortletPreferences (javax.portlet.PortletPreferences)4 HttpServletRequest (javax.servlet.http.HttpServletRequest)4 Principal (java.security.Principal)3 List (java.util.List)3 IPersonAttributes (org.jasig.services.persondir.IPersonAttributes)3 LinkedHashSet (java.util.LinkedHashSet)2 PortletSession (javax.portlet.PortletSession)2 IPortletWindowId (org.apereo.portal.portlet.om.IPortletWindowId)2 IPerson (org.apereo.portal.security.IPerson)2 HashMap (java.util.HashMap)1 Entry (java.util.Map.Entry)1 Set (java.util.Set)1 TreeSet (java.util.TreeSet)1 ConcurrentHashMap (java.util.concurrent.ConcurrentHashMap)1 PortletResponse (javax.portlet.PortletResponse)1 RenderRequest (javax.portlet.RenderRequest)1 RenderResponse (javax.portlet.RenderResponse)1 HttpSession (javax.servlet.http.HttpSession)1 DelegationRequest (org.apereo.portal.api.portlet.DelegationRequest)1