
com.github.yoojia.halo.server.WebServer Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of halo-server Show documentation
Show all versions of halo-server Show documentation
A FAST && THIN && HIGH SCALABLE Java web framework
The newest version!
package com.github.yoojia.halo.server;
import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.webapp.WebAppContext;
import javax.servlet.DispatcherType;
import javax.servlet.Filter;
import java.util.EnumSet;
/**
* @author YOOJIA.CHEN ([email protected])
*/
public class WebServer {
private final String webApp;
private final int port;
public WebServer(int port) {
this("src/main/webapp", port);
}
public WebServer(String webApp, int port) {
this.webApp = webApp;
this.port = port;
}
/**
* Run server
* @throws Exception
*/
public void run() throws Exception {
final Server server = new Server(port);
server.setHandler(new WebAppContext(webApp, "/"));
server.start();
server.join();
server.stop();
}
/**
* Run server
* @param filter
* @throws Exception
*/
public void run(Class extends Filter> filter) throws Exception {
final Server server = new Server(port);
final WebAppContext app = new WebAppContext(webApp, "/");
app.addFilter(filter, "/*", EnumSet.of(DispatcherType.REQUEST, DispatcherType.ASYNC, DispatcherType.FORWARD));
server.setHandler(app);
server.start();
server.join();
server.stop();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy