KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > exoplatform > jcr > launcher > JcrServletListener


1 package org.exoplatform.jcr.launcher;
2
3 import javax.servlet.ServletContext JavaDoc;
4 import javax.servlet.ServletContextEvent JavaDoc;
5 import javax.servlet.ServletContextListener JavaDoc;
6
7 import org.exoplatform.container.PortalContainer;
8 import org.exoplatform.container.RootContainer;
9 import org.exoplatform.services.jcr.RepositoryService;
10 import org.exoplatform.services.jcr.core.ManageableRepository;
11
12 public class JcrServletListener implements ServletContextListener JavaDoc {
13
14   public void contextInitialized(ServletContextEvent JavaDoc event) {
15     ServletContext JavaDoc servletContext = event.getServletContext();
16     RootContainer rootContainer = RootContainer.getInstance();
17     PortalContainer pcontainer = rootContainer
18         .getPortalContainer(servletContext.getServletContextName());
19     if (pcontainer == null) {
20       pcontainer = rootContainer.createPortalContainer(servletContext);
21     }
22     PortalContainer servicesManager = PortalContainer.getInstance();
23
24     RepositoryService repositoryService = (RepositoryService) servicesManager
25         .getComponentInstanceOfType(RepositoryService.class);
26
27     ManageableRepository repository = null;
28     try {
29       repository = (ManageableRepository) repositoryService.getRepository();
30       if (!repository.isWorkspaceInitialized("ws"))
31         repository.initWorkspace("ws", "nt:unstructured");
32     } catch (Exception JavaDoc e) {
33       e.printStackTrace();
34     }
35   }
36
37   public void contextDestroyed(ServletContextEvent JavaDoc event) {
38     RootContainer rootContainer = RootContainer.getInstance();
39     PortalContainer pcontainer = rootContainer.getPortalContainer(event
40         .getServletContext().getServletContextName());
41     if (pcontainer.isStarted())
42       pcontainer.stop();
43     rootContainer.removePortalContainer(event.getServletContext());
44   }
45 }
Popular Tags