Mercurial > dive4elements > river
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 } |