jackrabbit-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Cory Prowse <c...@prowse.com>
Subject Re: createWorkspace throws PathNotFoundException
Date Thu, 05 Aug 2010 23:10:44 GMT
Oh, should have highlighted that I didn't assign it to a release (might have been a bit presumptuous),
even though there was options for 2.1.1 (or 2.2.0).

 -- Cory

On 06/08/2010, at 9:03 AM, Cory Prowse wrote:

> Attempting to use a fresh session still causes the exception.
> 
> I've created issue JCR-2701:
>  https://issues.apache.org/jira/browse/JCR-2701
> 
> Key:    JCR-2701
> Type:    Bug
> Status:  Open
> Priority:        Major
> Assignee:       Unassigned
> Component/s:    jackrabbit-core
> Affects Version/s:      2.1.0
> Fix Version/s:  None
> Environment: Jackrabbit is deployed using released JCA on Glassfish 3.0.1
> 
> -- Cory
> 
> On 06/08/2010, at 2:19 AM, Alexander Klimetschek wrote:
> 
>> On Thu, Aug 5, 2010 at 13:57, Cory Prowse <cory@prowse.com> wrote:
>>> Sorry, I should have given a full example of the problem code.
>>> The following code fails on a fresh setup.
>>> 
>>> @Startup
>>> @Singleton
>>> public class JcrStartupSingleton {
>>> 
>>>   @Resource(name = "jcr/repository", type = javax.jcr.Repository.class)
>>>   private Repository repository;
>>> 
>>>   @PostConstruct
>>>   public void setupWorkspaces() throws RepositoryException {
>>>       final Session session = repository.login(new SimpleCredentials("admin1",
"".toCharArray()), "production");
>>>       try {
>>>           session.getRootNode().addNode("example");
>>>           session.save();
>>> 
>>>           session.getWorkspace().createWorkspace("staging", "production");
>>>       } finally {
>>>           session.logout();
>>>       }
>>>   }
>>> }
>>> 
>>> Gives an exception with a root cause of:
>>> Caused by: javax.jcr.PathNotFoundException: /example
>>>       at org.apache.jackrabbit.core.BatchedItemOperations.getNodeState(BatchedItemOperations.java:1456)
>>>       at org.apache.jackrabbit.core.BatchedItemOperations.copy(BatchedItemOperations.java:387)
>>>       at org.apache.jackrabbit.core.WorkspaceImpl.internalCopy(WorkspaceImpl.java:404)
>>>       at org.apache.jackrabbit.core.WorkspaceImpl.clone(WorkspaceImpl.java:606)
>>>       at org.apache.jackrabbit.core.WorkspaceImpl.createWorkspace(WorkspaceImpl.java:221)
>>>       at au.projectx.jcr.JcrStartupSingleton.setupWorkspaces(JcrStartupSingleton.java:49)
>>> 
>>> Where line 49 is:
>>> session.getWorkspace().createWorkspace("staging", "production");
>> 
>> Hmm, looks like a bug. Could you report it on Jira? See
>> http://jackrabbit.apache.org/issue-tracker.html
>> 
>> As a workaround, it might work if you use a freshly created session
>> for the createWorkspace() method:
>> 
>>   Session session = repository.login(...);
>>   session.getWorkspace().createWorkspace("staging", "production");
>> 
>> Regards,
>> Alex
>> 
>> -- 
>> Alexander Klimetschek
>> alexander.klimetschek@day.com
> 


Mime
View raw message