diff options
author | Egil Moeller <egil.moller@freecode.no> | 2010-03-22 00:16:53 +0100 |
---|---|---|
committer | Egil Moeller <egil.moller@freecode.no> | 2010-03-22 00:16:53 +0100 |
commit | fc00cfedd6c25d1634a1e0d28a7b7bc5f42e1cd7 (patch) | |
tree | 928419d6bfe794865e4b8f0634bd792f795c4b8a /infrastructure/ace/bin/serve | |
parent | 0fdab3db005c4fa31fb8306b573c0b35073d3e56 (diff) | |
parent | d56b9b3b82cdebcaeb00eec0fcb4326ad21adaa8 (diff) | |
download | etherpad-fc00cfedd6c25d1634a1e0d28a7b7bc5f42e1cd7.tar.gz etherpad-fc00cfedd6c25d1634a1e0d28a7b7bc5f42e1cd7.tar.xz etherpad-fc00cfedd6c25d1634a1e0d28a7b7bc5f42e1cd7.zip |
Merge branch 'master' into plugin-framework
Diffstat (limited to 'infrastructure/ace/bin/serve')
-rwxr-xr-x | infrastructure/ace/bin/serve | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/infrastructure/ace/bin/serve b/infrastructure/ace/bin/serve new file mode 100755 index 0000000..e02e042 --- /dev/null +++ b/infrastructure/ace/bin/serve @@ -0,0 +1,45 @@ +#!/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(); |