You are viewing a plain text version of this content. The canonical link for it is here.
Posted to slide-user@jakarta.apache.org by Andy Bowes <an...@scientiasolutions.com> on 2004/11/01 16:27:05 UTC
RE: Error Deleting Item
Hi Oliver
Thanks for the reply.
Closing the stream did help to resolve the problem. (I wasn't aware that
the stream had even been opened as I hadn't called the getStream() method).
Thanks
Andy Bowes
-----Original Message-----
From: Oliver Zeigermann
To: Slide Users Mailing List
Sent: 29/10/2004 10:21
Subject: Re: Error Deleting Item
The error tells you that you still have a temporary read lock on the
resource to delete. Either execute contentHelper.retrieve(slideToken,
itemUri, currentRevision); in a transaction or get the stream from it
and close it (or access the content in any other way).
Oliver
On Fri, 29 Oct 2004 09:58:24 +0100, Andy Bowes
<an...@scientiasolutions.com> wrote:
> Hi Guys
>
> I am using the Slide API directly rather than via the WebDav layer and
I am
> encountering an error that has had me baffled for quite a few days.
>
> If I attempt to delete an item after fetching content then I get the
> following error (after it seems to hang for ages):
>
> 29 Oct 2004 09:51:30 -
> org.apache.slide.store.txfile.rm.impl.FileResourceManager - WARNING -
Could
> not commit tx main-1099039880546-8, rolling back instead
> 29 Oct 2004 09:51:30 -
> org.apache.slide.store.txfile.rm.impl.FileResourceManager - WARNING -
> org.apache.slide.store.txfile.rm.ResourceManagerException:
> main-1099039880546-8: Could not upgrade to commit lock for resource at
> '/testfolder/myTestItem_1.0' (ERR_NO_LOCK)
> org.apache.slide.store.txfile.rm.ResourceManagerException:
> main-1099039880546-8: Could not upgrade to commit lock for resource at
> '/testfolder/myTestItem_1.0' (ERR_NO_LOCK)
> at
>
org.apache.slide.store.txfile.rm.impl.FileResourceManager$TransactionCon
text
> .upgradeLockToCommit(FileResourceManager.java:1434)
> at
>
org.apache.slide.store.txfile.rm.impl.FileResourceManager$TransactionCon
text
> .commit(FileResourceManager.java:1383)
> at
>
org.apache.slide.store.txfile.rm.impl.FileResourceManager.commitTransact
ion(
> FileResourceManager.java:616)
> at
>
org.apache.slide.store.txfile.AbstractTxFileStoreService.commit(Abstract
TxFi
> leStoreService.java:248)
> at
>
org.apache.slide.transaction.SlideTransaction.commit(SlideTransaction.ja
va:3
> 01)
> at
>
org.apache.slide.transaction.SlideTransactionManager.commit(SlideTransac
tion
> Manager.java:187)
> at
>
org.apache.slide.common.NamespaceAccessTokenImpl.commit(NamespaceAccessT
oken
> Impl.java:412)
>
> I have extracted the key parts of my calls to the Slide API into a
single
> method (as show below) so that I can reproduce this error. If I
remove the
> call to contentHelper.retrieve() then it all works fine.
>
> Can anyone out there enlighten me ?
>
> Thanks
>
> Andy Bowes
>
> p.s. I am using v2.0 and I have encountered this issue on both the
Text &
> JDBC File Stores.
>
> private void testSlideCreation(SlideToken slideToken,
> NamespaceAccessToken accessToken,
> String itemUri) throws Exception {
> Content contentHelper = accessToken.getContentHelper();
> Structure structureHelper = accessToken.getStructureHelper();
>
> // Start the Transaction
> accessToken.begin();
>
> structureHelper.create(slideToken, new SubjectNode(),
itemUri);
>
> NodeRevisionDescriptor revisionDesc = new
NodeRevisionDescriptor();
>
> Date now = new Date();
> revisionDesc.setCreationDate(now);
> revisionDesc.setCreationUser("root");
> revisionDesc.setLastModified(now);
> revisionDesc.setModificationDate(now);
> revisionDesc.setModificationUser("root");
> revisionDesc.setResourceType("scientia:test");
>
> String contents = "Test Binary Contents";
> revisionDesc.setContentLength(contents.length());
> revisionDesc.setContentType("application/pdf");
> revisionDesc.setContentLanguage("en");
>
> NodeRevisionContent revisionContent = new
NodeRevisionContent();
> revisionContent.setContent(contents.getBytes());
>
> contentHelper.create(slideToken, itemUri, revisionDesc,
> revisionContent );
>
> // Commit the Creation Transaction
> accessToken.commit();
>
> // Fetch the Created Item
> ObjectNode itemNode = structureHelper.retrieve(slideToken,
itemUri);
> NodeRevisionDescriptors revisions =
> contentHelper.retrieve(slideToken, itemUri);
>
> // Get the latest revision of this Content
> NodeRevisionDescriptor currentRevision =
> contentHelper.retrieve(slideToken, revisions);
>
> // Get the Content of the Current Revision
> NodeRevisionContent content =
contentHelper.retrieve(slideToken,
> itemUri, currentRevision);
>
> // Delete the Created Item
> accessToken.begin();
> Macro macroHelper = accessToken.getMacroHelper();
> macroHelper.delete(slideToken, itemUri);
> accessToken.commit();
> }
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: slide-user-help@jakarta.apache.org
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: slide-user-help@jakarta.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: slide-user-help@jakarta.apache.org