Use the HTTP status code in ServiceMayNotContinueException

Change-Id: I7204e764369cdede4295abed861e52fc51324ab7
diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/ViewFilter.java b/gitiles-servlet/src/main/java/com/google/gitiles/ViewFilter.java
index 51e248e..7e41078 100644
--- a/gitiles-servlet/src/main/java/com/google/gitiles/ViewFilter.java
+++ b/gitiles-servlet/src/main/java/com/google/gitiles/ViewFilter.java
@@ -29,6 +29,7 @@
 import javax.servlet.http.HttpServletResponse;
 import org.eclipse.jgit.http.server.ServletUtils;
 import org.eclipse.jgit.http.server.glue.WrappedRequest;
+import org.eclipse.jgit.transport.ServiceMayNotContinueException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -103,6 +104,9 @@
     GitilesView.Builder view;
     try {
       view = parse(req);
+    } catch (ServiceMayNotContinueException e) {
+      res.setStatus(e.getStatusCode());
+      return;
     } catch (IOException err) {
       String name = urls.getHostName(req);
       log.warn("Cannot parse view" + (name != null ? " for " + name : ""), err);