You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "Daniel Bloomfield Ramagem (JIRA)" <ji...@apache.org> on 2007/02/23 16:36:05 UTC

[jira] Updated: (JCR-763) Unable to create and login to different workspaces

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

Daniel Bloomfield Ramagem updated JCR-763:
------------------------------------------

    Attachment: testservlet.war

Simple test Servlet for demonstrating the reported problem, with the source code inside.  This WAR has a Geronimo deployment plan inside.  The Jackrabbit JCA Resource Adapter must have already been installed in the server.

> Unable to create and login to different workspaces
> --------------------------------------------------
>
>                 Key: JCR-763
>                 URL: https://issues.apache.org/jira/browse/JCR-763
>             Project: Jackrabbit
>          Issue Type: Bug
>          Components: jca
>    Affects Versions: 1.2.1
>         Environment: Geronimo 1.1.1, Java 5r10, Windows XP
>            Reporter: Daniel Bloomfield Ramagem
>         Attachments: stacktrace.txt, testservlet.war
>
>
> I'm using the Jackrabbit 1.2.1 JCA adapter and trying to have a Servlet create and use two separate workspaces.  I get a "java.lang.IllegalStateException: Inactive logical session handle called" error when running the code below:
> Context ctx = new InitialContext();
> Repository repository = (Repository) ctx.lookup("java:comp/env/jackrabbit");
> Credentials credentials = new SimpleCredentials("username", "password".toCharArray());
> Session session = repository.login(credentials);
> Workspace workspace = session.getWorkspace();
> JackrabbitWorkspace jws = (JackrabbitWorkspace) workspace;
> jws.createWorkspace("ws1");
> jws.createWorkspace ("ws2");
> Session s1 = repository.login(credentials, "ws1");
> Session s2 = repository.login(credentials, "ws2");
> System.out.println("s1.getWorkspace().getName() = " + s1.getWorkspace ().getName());
> System.out.println("s2.getWorkspace().getName() = " + s2.getWorkspace().getName());
> To make matters worse, when I comment out the lines for the creation of the second workspace (ws2), the code runs fine but I can't seem to login to ws1.  On the file system the "ws1" workspace directory got created OK.   But the System.out.println prints "default" for the workspace name)
> Context ctx = new InitialContext();
> Repository repository = (Repository) ctx.lookup("java:comp/env/jackrabbit");
> Credentials credentials = new SimpleCredentials("username", "password".toCharArray());
> Session session = repository.login(credentials);
> Workspace workspace = session.getWorkspace();
> JackrabbitWorkspace jws = (JackrabbitWorkspace) workspace;
> jws.createWorkspace("ws1");
> //jws.createWorkspace ("ws2");
> Session s1 = repository.login(credentials, "ws1");
> //Session s2 = repository.login(credentials, "ws2");
> System.out.println("s1.getWorkspace().getName() = " + s1.getWorkspace ().getName());
> //System.out.println("s2.getWorkspace().getName() = " + s2.getWorkspace().getName());

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