You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "Jukka Zitting (JIRA)" <ji...@apache.org> on 2009/01/09 17:51:59 UTC

[jira] Resolved: (JCR-1823) Repository.login throws IllegalStateException

     [ https://issues.apache.org/jira/browse/JCR-1823?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jukka Zitting resolved JCR-1823.
--------------------------------

       Resolution: Fixed
    Fix Version/s: 1.5.1
         Assignee: Jukka Zitting

Patch applied in revision 733080. Targeting for 1.5.1.

> Repository.login throws IllegalStateException
> ---------------------------------------------
>
>                 Key: JCR-1823
>                 URL: https://issues.apache.org/jira/browse/JCR-1823
>             Project: Jackrabbit
>          Issue Type: Bug
>          Components: jackrabbit-core
>    Affects Versions: core 1.4.5
>            Reporter: Felix Meschberger
>            Assignee: Jukka Zitting
>             Fix For: 1.5.1
>
>         Attachments: JCR-1823.patch
>
>
> Calling any login method on Repository instance, which has been shut down throws an IllegalStateException, which is caused by the RepositoryImpl.sanityCheck method.
> This exception is unexpected by callers of the login method, which is specified to throw one of LoginException, NoSuchWorkspaceException and RepositoryException. In particular the spec says, that a RepositoryException is thrown "if another error occurs".
> So I suggest to modify the RepositoryImpl.login(Credentials, String) as follows (patch against trunk):
> Index: /usr/src/jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/RepositoryImpl.java
> ===================================================================
> --- /usr/src/jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/RepositoryImpl.java	(revision 706543)
> +++ /usr/src/jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/RepositoryImpl.java	(working copy)
> @@ -1358,6 +1358,8 @@
>          } catch (AccessDeniedException ade) {
>              // authenticated subject is not authorized for the specified workspace
>              throw new LoginException("Workspace access denied", ade);
> +        } catch (RuntimeException re) {
> +            throw new RepositoryException(re.getMessage(), re);
>          } finally {
>              shutdownLock.readLock().release();
>          }

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.