1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 package org.mortbay.jetty;
16
17 import org.mortbay.jetty.bio.SocketConnector;
18 import org.mortbay.jetty.handler.ContextHandler;
19 import org.mortbay.jetty.handler.ContextHandlerCollection;
20 import org.mortbay.jetty.servlet.ServletHandler;
21 import org.mortbay.jetty.webapp.WebAppContext;
22 import org.mortbay.log.Log;
23 import org.mortbay.util.URIUtil;
24
25 public class Main
26 {
27
28
29
30
31
32
33 public static void main(String[] args)
34 {
35 if (args.length<1 || args.length>3)
36 {
37 System.err.println("Usage - java org.mortbay.jetty.Main [<addr>:]<port>");
38 System.err.println("Usage - java org.mortbay.jetty.Main [<addr>:]<port> docroot");
39 System.err.println("Usage - java org.mortbay.jetty.Main [<addr>:]<port> -webapp myapp.war");
40 System.err.println("Usage - java org.mortbay.jetty.Main [<addr>:]<port> -webapps webapps");
41 System.err.println("Usage - java -jar jetty-x.x.x-standalone.jar [<addr>:]<port>");
42 System.err.println("Usage - java -jar jetty-x.x.x-standalone.jar [<addr>:]<port> docroot");
43 System.err.println("Usage - java -jar jetty-x.x.x-standalone.jar [<addr>:]<port> -webapp myapp.war");
44 System.err.println("Usage - java -jar jetty-x.x.x-standalone.jar [<addr>:]<port> -webapps webapps");
45 System.exit(1);
46 }
47
48 try{
49
50
51 Server server = new Server();
52 ContextHandlerCollection contexts = new ContextHandlerCollection();
53 server.setHandler(contexts);
54
55 SocketConnector connector = new SocketConnector();
56 String address = args[0];
57 int colon = address.lastIndexOf(':');
58 if (colon<0)
59 connector.setPort(Integer.parseInt(address));
60 else
61 {
62 connector.setHost(address.substring(0,colon));
63 connector.setPort(Integer.parseInt(address.substring(colon+1)));
64 }
65 server.setConnectors(new Connector[]{connector});
66
67 if (args.length<3)
68 {
69 ContextHandler context = new ContextHandler();
70 context.setContextPath(URIUtil.SLASH);
71 context.setResourceBase(args.length==1?".":args[1]);
72 ServletHandler servlet = new ServletHandler();
73 servlet.addServletWithMapping("org.mortbay.jetty.servlet.DefaultServlet", URIUtil.SLASH);
74 context.setHandler(servlet);
75 contexts.addHandler(context);
76 }
77 else if ("-webapps".equals(args[1]))
78 {
79 WebAppContext.addWebApplications(server, args[2], WebAppContext.WEB_DEFAULTS_XML, true, true);
80 }
81 else if ("-webapp".equals(args[1]))
82 {
83 WebAppContext webapp = new WebAppContext();
84 webapp.setWar(args[2]);
85 webapp.setContextPath(URIUtil.SLASH);
86 contexts.addHandler(webapp);
87 }
88
89 server.start();
90
91 }
92 catch (Exception e)
93 {
94 Log.warn(Log.EXCEPTION,e);
95 }
96 }
97 }