James Moger
2011-06-18 896c533de882d729a6fd8a30e08fd5a9e9eec27d
Map gitservlet from web.xml and configure it from gitblit properties.
1 files added
2 files modified
40 ■■■■ changed files
src/WEB-INF/web.xml 14 ●●●● patch | view | raw | blame | history
src/com/gitblit/GitBlitServer.java 10 ●●●●● patch | view | raw | blame | history
src/com/gitblit/GitServlet.java 16 ●●●●● patch | view | raw | blame | history
src/WEB-INF/web.xml
@@ -15,23 +15,15 @@
         <url-pattern> MUST match: 
            * GitFilter
            * com.gitblit.Constants.GIT_PATH
            * Wicket Filter ignorePaths parameter --><!-- STRIP
            * Wicket Filter ignorePaths parameter -->
    <servlet>
        <servlet-name>GitServlet</servlet-name>
        <servlet-class>org.jgit.http.transport.GitServlet</servlet-class>
        <init-param>
            <param-name>base-path</param-name>
            <param-value>c:/git</param-value>
        </init-param>
        <init-param>
            <param-name>export-all</param-name>
            <param-value>1</param-value>
        </init-param>
        <servlet-class>com.gitblit.GitServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>GitServlet</servlet-name>        
        <url-pattern>/git/*</url-pattern>
    </servlet-mapping>STRIP -->
    </servlet-mapping>
    
    
    <!-- Syndication Servlet
src/com/gitblit/GitBlitServer.java
@@ -38,11 +38,8 @@
import org.eclipse.jetty.server.ssl.SslConnector;
import org.eclipse.jetty.server.ssl.SslSelectChannelConnector;
import org.eclipse.jetty.server.ssl.SslSocketConnector;
import org.eclipse.jetty.servlet.FilterMapping;
import org.eclipse.jetty.servlet.ServletHolder;
import org.eclipse.jetty.util.thread.QueuedThreadPool;
import org.eclipse.jetty.webapp.WebAppContext;
import org.eclipse.jgit.http.server.GitServlet;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -196,13 +193,6 @@
        // Use secure cookies if only serving https
        sessionManager.setSecureCookies(params.port <= 0 && params.securePort > 0);
        rootContext.getSessionHandler().setSessionManager(sessionManager);
        // JGit Filter and Servlet
        String jgitPathSpec = Constants.GIT_PATH + "*";
        rootContext.addFilter(GitFilter.class, jgitPathSpec, FilterMapping.DEFAULT);
        ServletHolder jGitServlet = rootContext.addServlet(GitServlet.class, jgitPathSpec);
        jGitServlet.setInitParameter("base-path", params.repositoriesFolder);
        jGitServlet.setInitParameter("export-all", "1");
        // Ensure there is a defined Login Service
        String realmUsers = params.realmFile;
src/com/gitblit/GitServlet.java
New file
@@ -0,0 +1,16 @@
package com.gitblit;
public class GitServlet extends org.eclipse.jgit.http.server.GitServlet {
    private static final long serialVersionUID = 1L;
    @Override
    public String getInitParameter(String name) {
        if (name.equals("base-path")) {
            return GitBlit.getString(Keys.git.repositoriesFolder, "git");
        } else if (name.equals("export-all")) {
            return "1";
        }
        return super.getInitParameter(name);
    }
}