I am facing a problem wherein when I login to the repository, I get null returned as jcrSession. For a background, I have written a Custom JAAS Login Module for authentication. When a user is trying to login and not found in the repository, I create the user then and there as follows:

jcrUserManager.createUser(simpleCredentials.getUserID(),new String(simpleCredentials.getPassword())) and then add the created users principal to the subject. This is all happening fine. But when I try to login using this user, I do not get a session.

While trying to dig into the jackrabbit source code, I see that org.apache.jackrabbit.core.RepositoryImpl throws LoginException("Workspace access denied", ade); on calling SessionImpl session = createSession(authCtx, workspaceName);

Attaching my login module and application's soure code.