From: Mathieu Baudier Date: Fri, 16 Nov 2012 12:14:19 +0000 (+0000) Subject: Fix unclosed session when error X-Git-Tag: argeo-commons-2.1.30~738 X-Git-Url: http://git.argeo.org/?a=commitdiff_plain;h=e560be2a479aabde767e1dc87a7ba91543652ea0;p=lgpl%2Fargeo-commons.git Fix unclosed session when error git-svn-id: https://svn.argeo.org/commons/trunk@5851 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc --- diff --git a/server/runtime/org.argeo.server.jackrabbit/src/main/java/org/argeo/jackrabbit/remote/ScopedSessionProvider.java b/server/runtime/org.argeo.server.jackrabbit/src/main/java/org/argeo/jackrabbit/remote/ScopedSessionProvider.java index c3bcc01a7..ffe6df9b1 100644 --- a/server/runtime/org.argeo.server.jackrabbit/src/main/java/org/argeo/jackrabbit/remote/ScopedSessionProvider.java +++ b/server/runtime/org.argeo.server.jackrabbit/src/main/java/org/argeo/jackrabbit/remote/ScopedSessionProvider.java @@ -109,10 +109,12 @@ public class ScopedSessionProvider implements SessionProvider, Serializable { if (jcrSession == null) try { Session session = login(rep, workspace); - if (!session.getUserID().equals(springUser)) + if (!session.getUserID().equals(springUser)) { + JcrUtils.logoutQuietly(session); throw new ArgeoException("Spring Security user '" + springUser + "' not in line with JCR user '" + session.getUserID() + "'"); + } currentRepositoryName = requestJcrRepository; // do not use workspace variable which may be null currentWorkspaceName = session.getWorkspace().getName();