comparison flys-client/src/main/java/de/intevation/flys/client/server/features/FeatureServletContextListener.java @ 3476:4a6321dd5186

Implement a class representation of features corresponding to roles flys-client/trunk@5171 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Bjoern Ricks <bjoern.ricks@intevation.de>
date Wed, 08 Aug 2012 12:51:18 +0000
parents
children
comparison
equal deleted inserted replaced
3475:9b29facddbd1 3476:4a6321dd5186
1 package de.intevation.flys.client.server.features;
2
3 import java.io.IOException;
4
5 import javax.servlet.ServletContext;
6 import javax.servlet.ServletContextEvent;
7 import javax.servlet.ServletContextListener;
8
9 import org.apache.log4j.Logger;
10
11 import de.intevation.flys.client.server.LoggingConfigurator;
12
13 /**
14 * ServletContextListenter to initalize the Features globally for
15 * all Servlets
16 */
17 public class FeatureServletContextListener implements ServletContextListener {
18
19 public static final String LOG4J_PROPERTIES = "FLYS_CLIENT_LOG4J_PROPERIES";
20
21 public static final Logger logger = Logger.getLogger(FeatureServletContextListener.class);
22
23 @Override
24 public void contextInitialized(ServletContextEvent sce) {
25 ServletContext sc = sce.getServletContext();
26
27 this.initLogging(sc);
28
29 String filename = sc.getInitParameter("features-file");
30
31 logger.debug("Initializing ServletContext");
32 try {
33 XMLFileFeatures features = new XMLFileFeatures(sc.getRealPath(filename));
34 sc.setAttribute(Features.CONTEXT_ATTRIBUTE, features);
35 } catch(IOException e) {
36 logger.error(e);
37 }
38 }
39
40 @Override
41 public void contextDestroyed(ServletContextEvent sce) {
42 //DO NOTHING
43 }
44
45
46 private void initLogging(ServletContext sc) {
47 String log4jProperties = System.getenv(LOG4J_PROPERTIES);
48
49 if (log4jProperties == null || log4jProperties.length() == 0) {
50 String file = sc.getInitParameter("log4j-properties");
51
52 if (file != null && file.length() > 0) {
53 log4jProperties = sc.getRealPath(file);
54 }
55 }
56 System.out.println(log4jProperties);
57
58 LoggingConfigurator.init(log4jProperties);
59 }
60 }

http://dive4elements.wald.intevation.org