currentLocalSession.close();
// new CMS session
cmsSession = new WebCmsSessionImpl(subject, authorization, locale, request);
+ CmsContextImpl.getCmsContext().registerCmsSession(cmsSession);
} else if (!authorization.getName().equals(currentLocalSession.getAuthorization().getName())) {
throw new IllegalStateException("Inconsistent user " + authorization.getName()
+ " for existing CMS session " + currentLocalSession);
public void start() {
super.start();
Path rootXml = KernelUtils.getOsgiInstancePath(ROOT_XML);
- initRootContentProvider(rootXml);
+ initRootContentProvider(null);
- Path srvPath = KernelUtils.getOsgiInstancePath(CmsConstants.SRV_WORKSPACE);
- FsContentProvider srvContentProvider = new FsContentProvider("/" + CmsConstants.SRV_WORKSPACE, srvPath, false);
- addProvider(srvContentProvider);
+// Path srvPath = KernelUtils.getOsgiInstancePath(CmsConstants.SRV_WORKSPACE);
+// FsContentProvider srvContentProvider = new FsContentProvider("/" + CmsConstants.SRV_WORKSPACE, srvPath, false);
+// addProvider(srvContentProvider);
}
@Override
lc.login();
} catch (LoginException e) {
try {
- lc = new LoginContext(CmsAuth.LOGIN_CONTEXT_ANONYMOUS);
+ lc = new LoginContext(CmsAuth.LOGIN_CONTEXT_ANONYMOUS,
+ new RemoteAuthCallbackHandler(new ServletHttpRequest(UiContext.getHttpRequest()),
+ new ServletHttpResponse(UiContext.getHttpResponse())));
lc.login();
} catch (LoginException e1) {
throw new IllegalStateException("Cannot log in as anonymous", e1);
try {
CurrentUser.logoutCmsSession(loginContext.getSubject());
loginContext.logout();
- LoginContext anonymousLc = new LoginContext(CmsAuth.LOGIN_CONTEXT_ANONYMOUS);
+ LoginContext anonymousLc = new LoginContext(CmsAuth.LOGIN_CONTEXT_ANONYMOUS,
+ new RemoteAuthCallbackHandler(new ServletHttpRequest(UiContext.getHttpRequest()),
+ new ServletHttpResponse(UiContext.getHttpResponse())));
anonymousLc.login();
authChange(anonymousLc);
} catch (LoginException e) {