001
014
015 package com.liferay.portal.apache.bridges.struts;
016
017 import com.liferay.portal.kernel.servlet.ServletContextProvider;
018 import com.liferay.portal.kernel.util.JavaConstants;
019 import com.liferay.portal.util.PortalUtil;
020 import com.liferay.portlet.PortletContextImpl;
021
022 import javax.portlet.GenericPortlet;
023 import javax.portlet.PortletContext;
024 import javax.portlet.PortletRequest;
025 import javax.portlet.PortletResponse;
026
027 import javax.servlet.ServletContext;
028 import javax.servlet.http.HttpServletRequest;
029 import javax.servlet.http.HttpServletResponse;
030
031
036 public class LiferayServletContextProvider implements ServletContextProvider {
037
038 public HttpServletRequest getHttpServletRequest(
039 GenericPortlet portlet, PortletRequest portletRequest) {
040
041 HttpServletRequest request = PortalUtil.getHttpServletRequest(
042 portletRequest);
043
044 return new LiferayStrutsRequestImpl(request);
045 }
046
047 public HttpServletResponse getHttpServletResponse(
048 GenericPortlet portlet, PortletResponse portletResponse) {
049
050 return PortalUtil.getHttpServletResponse(portletResponse);
051 }
052
053 public ServletContext getServletContext(GenericPortlet portlet) {
054 PortletContext portletContext = portlet.getPortletContext();
055
056 ServletContext servletContext =
057 (ServletContext)portletContext.getAttribute(
058 JavaConstants.JAVAX_PORTLET_SERVLET_CONTEXT);
059
060 if (servletContext == null) {
061 PortletContextImpl portletContextImpl =
062 (PortletContextImpl)portlet.getPortletContext();
063
064 servletContext = portletContextImpl.getServletContext();
065 }
066
067 return getServletContext(servletContext);
068 }
069
070 public ServletContext getServletContext(ServletContext servletContext) {
071 return new LiferayServletContext(servletContext);
072 }
073
074 }