From 3fc22751d5f0023316497dcc321d470936dcd9fb Mon Sep 17 00:00:00 2001 From: Mathieu Baudier Date: Fri, 16 Dec 2016 13:40:46 +0000 Subject: [PATCH] Improve remoting. git-svn-id: https://svn.argeo.org/commons/trunk@9361 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc --- .../src/org/argeo/cms/internal/kernel/DataHttp.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/org.argeo.cms/src/org/argeo/cms/internal/kernel/DataHttp.java b/org.argeo.cms/src/org/argeo/cms/internal/kernel/DataHttp.java index acde18dc5..c08b5180b 100644 --- a/org.argeo.cms/src/org/argeo/cms/internal/kernel/DataHttp.java +++ b/org.argeo.cms/src/org/argeo/cms/internal/kernel/DataHttp.java @@ -392,17 +392,19 @@ class DataHttp implements KernelConstants { if (log.isTraceEnabled()) log.trace("Login to workspace " + (workspace == null ? "" : workspace) + " in web session " + request.getSession().getId()); - LoginContext lc = (LoginContext) request.getAttribute(NodeConstants.LOGIN_CONTEXT_USER); - if (lc == null) - throw new CmsException("No login context available"); +// LoginContext lc = (LoginContext) request.getAttribute(NodeConstants.LOGIN_CONTEXT_USER); +// if (lc == null) +// throw new CmsException("No login context available"); try { + LoginContext lc = new LoginContext(NodeConstants.LOGIN_CONTEXT_USER, new HttpRequestCallbackHandler(request)); + lc.login(); return Subject.doAs(lc.getSubject(), new PrivilegedExceptionAction() { @Override public Session run() throws Exception { return repository.login(workspace); } }); - } catch (PrivilegedActionException e) { + } catch (Exception e) { throw new CmsException("Cannot log in to JCR", e); } // return repository.login(workspace); -- 2.30.2