1
2
3
4
5
6
7
8
9
10
11
12
13
14 package org.eclipse.jetty.embedded;
15
16
17
18 import java.lang.management.ManagementFactory;
19
20 import org.eclipse.jetty.jmx.MBeanContainer;
21 import org.eclipse.jetty.server.Server;
22 import org.eclipse.jetty.server.handler.ContextHandlerCollection;
23 import org.eclipse.jetty.servlet.DefaultServlet;
24 import org.eclipse.jetty.servlet.ServletContextHandler;
25 import org.eclipse.jetty.servlet.ServletHolder;
26 import org.eclipse.jetty.util.log.Log;
27
28 public class ManyServletContexts
29 {
30 public static void main(String[] args) throws Exception
31 {
32 Server server = new Server(8080);
33
34
35 MBeanContainer mbContainer=new MBeanContainer(ManagementFactory.getPlatformMBeanServer());
36 server.getContainer().addEventListener(mbContainer);
37 server.addBean(mbContainer);
38 mbContainer.addBean(Log.getLog());
39
40 ContextHandlerCollection contexts = new ContextHandlerCollection();
41 server.setHandler(contexts);
42
43 ServletContextHandler root = new ServletContextHandler(contexts,"/",ServletContextHandler.SESSIONS);
44 root.addServlet(new ServletHolder(new HelloServlet("Hello")),"/");
45 root.addServlet(new ServletHolder(new HelloServlet("Ciao")),"/it/*");
46 root.addServlet(new ServletHolder(new HelloServlet("Bonjoir")),"/fr/*");
47
48 ServletContextHandler other = new ServletContextHandler(contexts,"/other",ServletContextHandler.SESSIONS);
49 other.addServlet(DefaultServlet.class.getCanonicalName(),"/");
50 other.addServlet(new ServletHolder(new HelloServlet("YO!")),"*.yo");
51
52 server.start();
53 System.err.println(server.dump());
54 server.join();
55 }
56 }