KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > nanocontainer > webcontainer > PicoWebAppContext


1 /*****************************************************************************
2  * Copyright (C) NanoContainer Organization. All rights reserved. *
3  * ------------------------------------------------------------------------- *
4  * The software in this package is published under the terms of the BSD *
5  * style license a copy of which has been included with this distribution in *
6  * the LICENSE.txt file. *
7  * *
8  *****************************************************************************/

9
10 package org.nanocontainer.webcontainer;
11
12 import org.mortbay.jetty.webapp.WebAppContext;
13 import org.mortbay.jetty.webapp.WebXmlConfiguration;
14 import org.mortbay.jetty.webapp.Configuration;
15 import org.picocontainer.PicoContainer;
16 import org.nanocontainer.webcontainer.PicoServletHandler;
17
18 public class PicoWebAppContext extends WebAppContext {
19     private final PicoContainer parentContainer;
20
21     public PicoWebAppContext(PicoContainer parentContainer) {
22              super(null,null,new PicoServletHandler(parentContainer),null);
23         this.parentContainer = parentContainer;
24     }
25
26     protected void loadConfigurations() throws Exception JavaDoc {
27         super.loadConfigurations();
28         Configuration[] configurations = getConfigurations();
29         for (int i = 0; i < configurations.length; i++) {
30             if (configurations[i] instanceof WebXmlConfiguration) {
31                 configurations[i] = new PicoWebXmlConfiguration(parentContainer);
32             }
33         }
34         setConfigurations(configurations);
35     }
36
37
38 }
39
Popular Tags