Package org.apache.jetspeed.factory

Examples of org.apache.jetspeed.factory.PortletInstance


        {
            String message = "Failed to find Servlet context for Portlet Application: " + portletApplicationName;
            log.error(message);
            throw new PortletException(message);
        }
        PortletInstance portletInstance = portletFactory.getPortletInstance(appContext, portletDefinition);
        RequestDispatcher dispatcher = appContext.getRequestDispatcher(servletMappingName);
        if (null == dispatcher)
        {
            String message =
                "Failed to get Request Dispatcher for Portlet Application: "
                    + portletApplicationName
                    + ", servlet: "
                    + servletMappingName;
            log.error(message);
            throw new PortletException(message);
        }

        try
        {
            servletRequest.setAttribute(ContainerConstants.PORTLET, portletInstance);
            servletRequest.setAttribute(ContainerConstants.PORTLET_CONFIG, portletInstance.getConfig());
            servletRequest.setAttribute(ContainerConstants.PORTLET_REQUEST, portletRequest);
            servletRequest.setAttribute(ContainerConstants.PORTLET_RESPONSE, portletResponse);
            servletRequest.setAttribute(ContainerConstants.METHOD_ID, methodID);
            RequestContext requestContext = (RequestContext)servletRequest.getAttribute(PortalReservedParameters.REQUEST_CONTEXT_ATTRIBUTE);
            servletRequest.setAttribute(ContainerConstants.PORTAL_CONTEXT, requestContext.getRequest().getContextPath());
View Full Code Here


            return;
        }
                       
        try
        {
            PortletInstance portletInstance = window.getPortletInstance();
            PortletConfig portletConfig = portletInstance.getConfig();

            window.getPortletRequestContext().init(portletConfig, getServletContext(), request, response);
            window.getPortletResponseContext().init(request, response);
           
            FilterManager filterManager = (FilterManager) window.getAttribute(PortalReservedParameters.PORTLET_FILTER_MANAGER_ATTRIBUTE);
            window.removeAttribute(PortalReservedParameters.PORTLET_FILTER_MANAGER_ATTRIBUTE);
           
            if (PortletWindow.Action.ACTION.equals(window.getAction()))
            {
                ActionRequest actionRequest = (ActionRequest)window.getPortletRequest();
                ActionResponse actionResponse = (ActionResponse)window.getPortletResponse();
               
                if (filterManager != null)
                {
                    filterManager.processFilter(actionRequest, actionResponse, portletInstance, portletConfig.getPortletContext());
                }
                else
                {
                    portletInstance.processAction(actionRequest, actionResponse);
                }
            }
            else if (PortletWindow.Action.RENDER.equals(window.getAction()))
            {
                RenderRequest renderRequest = (RenderRequest)window.getPortletRequest();
                RenderResponse renderResponse =  (RenderResponse)window.getPortletResponse();
               
                if (filterManager != null)
                {
                    filterManager.processFilter(renderRequest, renderResponse, portletInstance, portletConfig.getPortletContext());
                }
                else
                {
                    portletInstance.render(renderRequest, renderResponse);
                }
            }
            else if (PortletWindow.Action.EVENT.equals(window.getAction()))
            {
                EventRequest eventRequest = (EventRequest)window.getPortletRequest();
                EventResponse eventResponse =  (EventResponse)window.getPortletResponse();
               
                if (filterManager != null)
                {
                    filterManager.processFilter(eventRequest, eventResponse, portletInstance, portletConfig.getPortletContext());
                }
                else
                {
                    portletInstance.processEvent(eventRequest, eventResponse);
                }
            }
            else if (PortletWindow.Action.RESOURCE.equals(window.getAction()))
            {
                ResourceRequest resourceRequest = (ResourceRequest)window.getPortletRequest();
                ResourceResponse resourceResponse = (ResourceResponse)window.getPortletResponse();
               
                if (filterManager != null)
                {
                    filterManager.processFilter(resourceRequest, resourceResponse, portletInstance, portletConfig.getPortletContext());
                }
                else
                {
                    portletInstance.serveResource(resourceRequest, resourceResponse);
                }
            }

            // if we get this far we are home free
            return;
View Full Code Here

       
        PortletApplication pa = portletDefinition.getApplication();
        pa.setLocalContextPath(portalContext.getContextPath());

        ClassLoader paClassLoader = portletFactory.getPortletApplicationClassLoader(pa);
        PortletInstance portletInstance = portletFactory.getPortletInstance(jetspeedContext, portletDefinition);
       
        ClassLoader oldLoader = Thread.currentThread().getContextClassLoader();
        try
        {
            PortletResponseContext responseContext = (PortletResponseContext)portletRequest.getAttribute(PortletInvokerService.RESPONSE_CONTEXT);
            ((JetspeedRequestContext)window.getRequestContext()).setCurrentPortletWindow(window);
           
            window.setInvocationState(action, requestContext, responseContext, portletRequest, portletResponse, portletInstance);
            window.setAttribute(PortalReservedParameters.FRAGMENT_ATTRIBUTE, window.getFragment());
            window.setAttribute(PortalReservedParameters.PORTLET_WINDOW_ATTRIBUTE, window);
            window.setAttribute(PortalReservedParameters.PORTLET_DEFINITION_ATTRIBUTE, portletDefinition);
           
            // initialize request/response for portletRequestContext
            HttpServletRequest request = requestContext.getContainerRequest();
            HttpServletResponse response = requestContext.getContainerResponse();
           
            request = (HttpServletRequest) requestResponseUnwrapper.unwrapContainerRequest(request);
            response = (HttpServletResponse) requestResponseUnwrapper.unwrapContainerResponse(response);
            requestContext.init(window.getPortletInstance().getConfig(), this.jetspeedContext, request, response);
            window.getPortletResponseContext().init(request, response);
           
            Thread.currentThread().setContextClassLoader(paClassLoader);
           
            if (PortletWindow.Action.ACTION == action)
            {
                ActionRequest actionRequest = (ActionRequest) portletRequest;
                ActionResponse actionResponse = (ActionResponse) portletResponse;

                portletInstance.processAction(actionRequest, actionResponse);
            }
            else // if (PortletWindow.Action.RENDER == action)
            {
                RenderRequest renderRequest = (RenderRequest) portletRequest;
                RenderResponse renderResponse = (RenderResponse) portletResponse;
                renderResponse.setContentType(window.getRequestContext().getMimeType());
                portletInstance.render(renderRequest, renderResponse);
            }
        }
        catch (Throwable t)
        {
            if ( t instanceof UnavailableException )
            {
                // take it out of service
                try
                {
                    portletInstance.destroy();
                }
                catch (Throwable ignore)
                {
                    // never mind, it won't be used anymore
                }
View Full Code Here

        {
            String message = "Failed to find Servlet context for Portlet Application: " + appContextPath;
            log.error(message);
            throw new PortletException(message);
        }
        PortletInstance portletInstance = portletFactory.getPortletInstance(appContext, portletDefinition);
        RequestDispatcher dispatcher = appContext.getRequestDispatcher(servletMappingName);
        if (null == dispatcher)
        {
            String message = "Failed to get Request Dispatcher for Portlet Application: "+appContextPath+", servlet: "+servletMappingName;
            log.error(message);
View Full Code Here

            return;
        }
                       
        try
        {
            PortletInstance portletInstance = window.getPortletInstance();
            PortletConfig portletConfig = portletInstance.getConfig();

            window.getPortletRequestContext().init(portletConfig, getServletContext(), request, response);
            window.getPortletResponseContext().init(request, response);
           
            FilterManager filterManager = (FilterManager) window.getAttribute(PortalReservedParameters.PORTLET_FILTER_MANAGER_ATTRIBUTE);
            window.removeAttribute(PortalReservedParameters.PORTLET_FILTER_MANAGER_ATTRIBUTE);
           
            if (PortletWindow.Action.ACTION.equals(window.getAction()))
            {
                ActionRequest actionRequest = (ActionRequest)window.getPortletRequest();
                ActionResponse actionResponse = (ActionResponse)window.getPortletResponse();
               
                if (filterManager != null)
                {
                    filterManager.processFilter(actionRequest, actionResponse, portletInstance, portletConfig.getPortletContext());
                }
                else
                {
                    portletInstance.processAction(actionRequest, actionResponse);
                }
            }
            else if (PortletWindow.Action.RENDER.equals(window.getAction()))
            {
                RenderRequest renderRequest = (RenderRequest)window.getPortletRequest();
                RenderResponse renderResponse =  (RenderResponse)window.getPortletResponse();
               
                if (filterManager != null)
                {
                    filterManager.processFilter(renderRequest, renderResponse, portletInstance, portletConfig.getPortletContext());
                }
                else
                {
                    portletInstance.render(renderRequest, renderResponse);
                }
            }
            else if (PortletWindow.Action.EVENT.equals(window.getAction()))
            {
                EventRequest eventRequest = (EventRequest)window.getPortletRequest();
                EventResponse eventResponse =  (EventResponse)window.getPortletResponse();
               
                if (filterManager != null)
                {
                    filterManager.processFilter(eventRequest, eventResponse, portletInstance, portletConfig.getPortletContext());
                }
                else
                {
                    portletInstance.processEvent(eventRequest, eventResponse);
                }
            }
            else if (PortletWindow.Action.RESOURCE.equals(window.getAction()))
            {
                ResourceRequest resourceRequest = (ResourceRequest)window.getPortletRequest();
                ResourceResponse resourceResponse = (ResourceResponse)window.getPortletResponse();
               
                if (filterManager != null)
                {
                    filterManager.processFilter(resourceRequest, resourceResponse, portletInstance, portletConfig.getPortletContext());
                }
                else
                {
                    portletInstance.serveResource(resourceRequest, resourceResponse);
                }
            }

            // if we get this far we are home free
            return;
View Full Code Here

TOP

Related Classes of org.apache.jetspeed.factory.PortletInstance

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.