blob: e02e04233bb751b93b6e454f5a53ae8e54375c39 (
plain) (
tree)
|
|
#!/bin/bash
scala -nocompdaemon -Dlog4j.mortbay.loglevel=WARN -classpath lib/jetty-6.1.7.jar:lib/jetty-util-6.1.7.jar:lib/servlet-api-2.5-6.1.3.jar $0 $@ &
exit
!#
import org.mortbay.jetty.Server;
import org.mortbay.jetty.servlet.Context;
import org.mortbay.jetty.servlet.ServletHolder;
import org.mortbay.jetty.servlet.DefaultServlet;
import javax.servlet.http.{HttpServletRequest, HttpServletResponse};
object NonCachingDefaultServlet extends DefaultServlet() {
private def setHeaders(response:HttpServletResponse) {
response.setHeader("Cache-Control","no-cache"); // for HTTP 1.1
response.setHeader("Pragma","no-cache"); //for HTTP 1.0
response.setDateHeader ("Expires", 0); //for proxy server
response.setHeader("Cache-Control","no-store"); //HTTP 1.1
}
override def doGet(request:HttpServletRequest, response:HttpServletResponse) {
setHeaders(response);
super.doGet(request, response);
}
override def doHead(request:HttpServletRequest, response:HttpServletResponse) {
setHeaders(response);
super.doHead(request, response);
}
}
val port = if (args.length >= 1) args(0).toInt else 80;
val dir = if (args.length >= 2) args(1) else "www";
val server = new Server(port);
val context = new Context(server, "/", Context.SESSIONS);
context.setResourceBase(dir+"/");
context.addServlet(new ServletHolder(NonCachingDefaultServlet), "/");
context.setWelcomeFiles(Array[String]("index.html"));
println("pid: "+java.lang.management.ManagementFactory.getRuntimeMXBean.getName.split("@")(0));
server.start();
server.join();
|