1 //========================================================================
2 //Copyright 2006 Mort Bay Consulting Pty. Ltd.
3 //------------------------------------------------------------------------
4 //Licensed under the Apache License, Version 2.0 (the "License");
5 //you may not use this file except in compliance with the License.
6 //You may obtain a copy of the License at
7 //http://www.apache.org/licenses/LICENSE-2.0
8 //Unless required by applicable law or agreed to in writing, software
9 //distributed under the License is distributed on an "AS IS" BASIS,
10 //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 //See the License for the specific language governing permissions and
12 //limitations under the License.
13 //========================================================================
14
15 package org.mortbay.jetty.example;
16
17 import org.mortbay.jetty.Handler;
18 import org.mortbay.jetty.Server;
19 import org.mortbay.jetty.handler.DefaultHandler;
20 import org.mortbay.jetty.handler.HandlerList;
21 import org.mortbay.jetty.handler.ResourceHandler;
22 import org.mortbay.log.Log;
23
24 /* ------------------------------------------------------------ */
25 /** File server
26 * Usage - java org.mortbay.jetty.example.FileServer [ port [ docroot ]]
27 * @author gregw
28 *
29 */
30 public class FileServer
31 {
32 public static void main(String[] args)
33 throws Exception
34 {
35 int port=8080;
36 if (args.length>=1)
37 port=Integer.parseInt(args[0]);
38 Server server = new Server(port);
39
40 ResourceHandler resource_handler=new ResourceHandler();
41 resource_handler.setWelcomeFiles(new String[]{"index.html"});
42 resource_handler.setResourceBase(args.length==2?args[1]:".");
43 Log.info("serving "+resource_handler.getBaseResource());
44 HandlerList handlers = new HandlerList();
45 handlers.setHandlers(new Handler[]{resource_handler,new DefaultHandler()});
46 server.setHandler(handlers);
47
48 server.start();
49 server.join();
50 }
51
52 }