package com.openkm.servlet; import javax.jcr.Credentials; import javax.jcr.LoginException; import javax.jcr.Repository; import javax.jcr.Session; import javax.jcr.SimpleCredentials; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import org.apache.jackrabbit.server.BasicCredentialsProvider; import org.apache.jackrabbit.server.CredentialsProvider; import com.openkm.module.direct.DirectRepositoryModule; public class BasicSecuredServlet extends HttpServlet { private static final long serialVersionUID = 1L; private CredentialsProvider cp = new BasicCredentialsProvider(null); /** * Get JCR session */ public synchronized Session getSession(HttpServletRequest request) throws LoginException, javax.jcr.RepositoryException, ServletException { Credentials creds = cp.getCredentials(request); Repository rep = DirectRepositoryModule.getRepository(); if (creds == null) { return rep.login(); } else { return rep.login(creds); } } /** * Get JCR session */ public synchronized Session getSession(String user, String password) throws LoginException, javax.jcr.RepositoryException, ServletException { Credentials creds = new SimpleCredentials(user, password.toCharArray()); Repository rep = DirectRepositoryModule.getRepository(); return rep.login(creds); } }