Max Schmidt
Max Schmidt

Reputation: 7665

Set up embedded jetty with document root

If I enter http://example.com/index.html in my browser, jetty should look in a specified dir for the file index.html.

How can I achieve this with embedded jetty?

This is my code to start jetty:

InetSocketAddress socketAddress =InetSocketAddress.createUnresolved("0.0.0.0", 80);
Server server = new Server(socketAddress);
server.start();
server.join();

Upvotes: 2

Views: 1843

Answers (1)

Max Schmidt
Max Schmidt

Reputation: 7665

Found a good description at http://wiki.eclipse.org/Jetty/Tutorial/Embedding_Jetty

public class FileServer{

    public static void main(String[] args) throws Exception{

        Server server = new Server();
        SelectChannelConnector connector = new SelectChannelConnector();
        connector.setPort(8080);
        server.addConnector(connector);

        ResourceHandler resource_handler = new ResourceHandler();
        resource_handler.setDirectoriesListed(true);
        resource_handler.setWelcomeFiles(new String[]{ "index.html" });

        resource_handler.setResourceBase(".");

        HandlerList handlers = new HandlerList();
        handlers.setHandlers(new Handler[] { resource_handler, new DefaultHandler() });
        server.setHandler(handlers);

        server.start();
        server.join();
    }
}

Upvotes: 4

Related Questions