diff --git a/java/com/google/gitiles/HostIndexServlet.java b/java/com/google/gitiles/HostIndexServlet.java
index 2585ef8..d23aa3c 100644
--- a/java/com/google/gitiles/HostIndexServlet.java
+++ b/java/com/google/gitiles/HostIndexServlet.java
@@ -20,6 +20,7 @@
 import static javax.servlet.http.HttpServletResponse.SC_NOT_FOUND;
 import static javax.servlet.http.HttpServletResponse.SC_SERVICE_UNAVAILABLE;
 import static javax.servlet.http.HttpServletResponse.SC_UNAUTHORIZED;
+import static org.eclipse.jgit.http.server.GitSmartHttpTools.sendError;
 
 import com.google.common.base.Strings;
 import com.google.common.collect.ImmutableMap;
@@ -75,8 +76,7 @@
       res.sendError(SC_UNAUTHORIZED);
       return null;
     } catch (ServiceMayNotContinueException e) {
-      // TODO(dborowitz): Show the error message to the user.
-      res.sendError(e.getStatusCode());
+      sendError(req, res, e.getStatusCode(), e.getMessage());
       return null;
     } catch (IOException err) {
       String name = urls.getHostName(req);
diff --git a/java/com/google/gitiles/ViewFilter.java b/java/com/google/gitiles/ViewFilter.java
index 7e41078..03e8d9a 100644
--- a/java/com/google/gitiles/ViewFilter.java
+++ b/java/com/google/gitiles/ViewFilter.java
@@ -18,6 +18,7 @@
 import static com.google.common.base.Preconditions.checkNotNull;
 import static javax.servlet.http.HttpServletResponse.SC_NOT_FOUND;
 import static javax.servlet.http.HttpServletResponse.SC_SERVICE_UNAVAILABLE;
+import static org.eclipse.jgit.http.server.GitSmartHttpTools.sendError;
 import static org.eclipse.jgit.http.server.ServletUtils.ATTRIBUTE_REPOSITORY;
 
 import com.google.common.base.Strings;
@@ -105,7 +106,7 @@
     try {
       view = parse(req);
     } catch (ServiceMayNotContinueException e) {
-      res.setStatus(e.getStatusCode());
+      sendError(req, res, e.getStatusCode(), e.getMessage());
       return;
     } catch (IOException err) {
       String name = urls.getHostName(req);
