Mercurial > hg > IndexMetaContextualizer
annotate 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 |
rev | line source |
---|---|
7
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
1 package de.mpiwg.indexmeta.web.servlet; |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
2 |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
3 import javax.faces.FactoryFinder; |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
4 import javax.faces.context.FacesContext; |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
5 import javax.faces.context.FacesContextFactory; |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
6 import javax.faces.lifecycle.Lifecycle; |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
7 import javax.faces.lifecycle.LifecycleFactory; |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
8 import javax.servlet.ServletContext; |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
9 import javax.servlet.http.HttpServlet; |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
10 import javax.servlet.http.HttpServletRequest; |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
11 import javax.servlet.http.HttpServletResponse; |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
12 |
8
9ce7979fd037
Implementation Data Provider
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
7
diff
changeset
|
13 import de.mpiwg.indexmeta.services.DataProvider; |
7
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
14 import de.mpiwg.indexmeta.web.beans.AbstractBean; |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
15 import de.mpiwg.indexmeta.web.beans.ApplicationBean; |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
16 |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
17 |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
18 public class AbstractServlet extends HttpServlet { |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
19 private static final long serialVersionUID = 1L; |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
20 |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
21 public static String METHOD = "mt"; |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
22 public static String getCtxFromDB = "getCtxFromDB"; |
8
9ce7979fd037
Implementation Data Provider
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
7
diff
changeset
|
23 public static String getCtxFromIndexMeta = "getCtxFromIndexMeta"; |
9ce7979fd037
Implementation Data Provider
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
7
diff
changeset
|
24 public static String getSaveCtx = "getSaveCtx"; |
7
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
25 |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
26 public ApplicationBean getAppBean(HttpServletRequest request, HttpServletResponse response) { |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
27 ApplicationBean appBean = (ApplicationBean)getApplicationBean(request, response, AbstractBean.BEAN_APP); |
8
9ce7979fd037
Implementation Data Provider
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
7
diff
changeset
|
28 |
7
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
29 if(appBean == null){ |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
30 appBean = new ApplicationBean(); |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
31 getFacesContext(request, response).getCurrentInstance().getExternalContext().getApplicationMap().put(AbstractBean.BEAN_APP, appBean); |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
32 } |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
33 return appBean; |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
34 } |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
35 |
8
9ce7979fd037
Implementation Data Provider
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
7
diff
changeset
|
36 public DataProvider getDp(HttpServletRequest request, HttpServletResponse response) { |
9ce7979fd037
Implementation Data Provider
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
7
diff
changeset
|
37 return getAppBean(request, response).getDp(); |
9ce7979fd037
Implementation Data Provider
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
7
diff
changeset
|
38 } |
9ce7979fd037
Implementation Data Provider
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
7
diff
changeset
|
39 |
7
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
40 public Object getApplicationBean(HttpServletRequest request, HttpServletResponse response, String bean) { |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
41 return getFacesContext(request, response).getExternalContext().getApplicationMap().get(bean); |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
42 } |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
43 |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
44 |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
45 public FacesContext getFacesContext(HttpServletRequest request, HttpServletResponse response) { |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
46 ServletContext servletContext = ((HttpServletRequest)request).getSession().getServletContext(); |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
47 FacesContextFactory contextFactory = (FacesContextFactory) FactoryFinder.getFactory(FactoryFinder.FACES_CONTEXT_FACTORY); |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
48 LifecycleFactory lifecycleFactory = (LifecycleFactory)FactoryFinder.getFactory(FactoryFinder.LIFECYCLE_FACTORY); |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
49 Lifecycle lifecycle = lifecycleFactory.getLifecycle(LifecycleFactory.DEFAULT_LIFECYCLE); |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
50 return contextFactory.getFacesContext(servletContext, request, response, lifecycle); |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
51 } |
bc57f2660b0f
implementation of web service
Jorge Urzua <jurzua@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
52 } |