// lookup JCR repository from context
Context initialContext = new InitialContext();
Repository repository = (Repository)initialContext.lookup(WIDGET_REPOSITORY_JNDI_REPOSITORY_FULL_NAME);
// create and login JCR session
Credentials credentials = new SimpleCredentials(repositoryUser, repositoryPassword.toCharArray());
Session session = ((repositoryWorkspace != null) ? repository.login(credentials, repositoryWorkspace) : repository.login(credentials));
// return session object content manager for session
return new SessionObjectContentManagerImpl(session, new AnnotationMapperImpl(CLASS_LIST));
}