diff --git a/org.eclipse.jgit.http.server/src/org/eclipse/jgit/http/server/glue/MetaFilter.java b/org.eclipse.jgit.http.server/src/org/eclipse/jgit/http/server/glue/MetaFilter.java
index 8cb3bea..2187cfa 100644
--- a/org.eclipse.jgit.http.server/src/org/eclipse/jgit/http/server/glue/MetaFilter.java
+++ b/org.eclipse.jgit.http.server/src/org/eclipse/jgit/http/server/glue/MetaFilter.java
@@ -52,6 +52,7 @@
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
+import java.util.regex.Pattern;
 
 import javax.servlet.Filter;
 import javax.servlet.FilterChain;
@@ -116,6 +117,17 @@ public ServletBinder serveRegex(String expression) {
 		return register(new RegexPipeline.Binder(expression));
 	}
 
+	/**
+	 * Construct a binding for a regular expression.
+	 *
+	 * @param pattern
+	 *            the regular expression to pattern match the URL against.
+	 * @return binder for the passed expression.
+	 */
+	public ServletBinder serveRegex(Pattern pattern) {
+		return register(new RegexPipeline.Binder(pattern));
+	}
+
 	public void init(FilterConfig filterConfig) throws ServletException {
 		servletContext = filterConfig.getServletContext();
 	}
diff --git a/org.eclipse.jgit.http.server/src/org/eclipse/jgit/http/server/glue/RegexPipeline.java b/org.eclipse.jgit.http.server/src/org/eclipse/jgit/http/server/glue/RegexPipeline.java
index 384ff45..2ef7136 100644
--- a/org.eclipse.jgit.http.server/src/org/eclipse/jgit/http/server/glue/RegexPipeline.java
+++ b/org.eclipse.jgit.http.server/src/org/eclipse/jgit/http/server/glue/RegexPipeline.java
@@ -91,6 +91,10 @@ static class Binder extends ServletBinderImpl {
 			pattern = Pattern.compile(p);
 		}
 
+		Binder(final Pattern p) {
+			pattern = p;
+		}
+
 		UrlPipeline create() {
 			return new RegexPipeline(pattern, getFilters(), getServlet());
 		}
