Mercurial > hg > IndexMetaContextualizer
view src/main/java/de/mpiwg/indexmeta/web/servlet/AbstractServlet.java @ 8:9ce7979fd037
Implementation Data Provider
author | Jorge Urzua <jurzua@mpiwg-berlin.mpg.de> |
---|---|
date | Wed, 24 Apr 2013 10:34:23 +0200 |
parents | bc57f2660b0f |
children |
line wrap: on
line source
package de.mpiwg.indexmeta.web.servlet; import javax.faces.FactoryFinder; import javax.faces.context.FacesContext; import javax.faces.context.FacesContextFactory; import javax.faces.lifecycle.Lifecycle; import javax.faces.lifecycle.LifecycleFactory; import javax.servlet.ServletContext; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import de.mpiwg.indexmeta.services.DataProvider; import de.mpiwg.indexmeta.web.beans.AbstractBean; import de.mpiwg.indexmeta.web.beans.ApplicationBean; public class AbstractServlet extends HttpServlet { private static final long serialVersionUID = 1L; public static String METHOD = "mt"; public static String getCtxFromDB = "getCtxFromDB"; public static String getCtxFromIndexMeta = "getCtxFromIndexMeta"; public static String getSaveCtx = "getSaveCtx"; public ApplicationBean getAppBean(HttpServletRequest request, HttpServletResponse response) { ApplicationBean appBean = (ApplicationBean)getApplicationBean(request, response, AbstractBean.BEAN_APP); if(appBean == null){ appBean = new ApplicationBean(); getFacesContext(request, response).getCurrentInstance().getExternalContext().getApplicationMap().put(AbstractBean.BEAN_APP, appBean); } return appBean; } public DataProvider getDp(HttpServletRequest request, HttpServletResponse response) { return getAppBean(request, response).getDp(); } public Object getApplicationBean(HttpServletRequest request, HttpServletResponse response, String bean) { return getFacesContext(request, response).getExternalContext().getApplicationMap().get(bean); } public FacesContext getFacesContext(HttpServletRequest request, HttpServletResponse response) { ServletContext servletContext = ((HttpServletRequest)request).getSession().getServletContext(); FacesContextFactory contextFactory = (FacesContextFactory) FactoryFinder.getFactory(FactoryFinder.FACES_CONTEXT_FACTORY); LifecycleFactory lifecycleFactory = (LifecycleFactory)FactoryFinder.getFactory(FactoryFinder.LIFECYCLE_FACTORY); Lifecycle lifecycle = lifecycleFactory.getLifecycle(LifecycleFactory.DEFAULT_LIFECYCLE); return contextFactory.getFacesContext(servletContext, request, response, lifecycle); } }