ok. can you create test-code and open a jira issue? thanks.
regards, toby
On 12/17/07, monteka <[EMAIL PROTECTED]> wrote:
>
> Hi Toby,
>
> Let me reiterate over the problem.
>
> The Problem:
>
> Say I have a VersionHistory (VH) node which has a jcr:rootVersion (VR) by
> default. Now I add multiple versions say V1, V2 and V3.
>
> So the links are as follows
>
> VH->VR->V1->V2->V3
>
> Now, I want to delete the base version V1, so that the version history links
> become
>
> VH->VR->V2->V3
>
> The problem is that if I delete the base version then I am unable to view
> the whole version history in my application. But this doesn't happen if I
> delete either V2 or V3 in the first case. The problem only comes if I delete
> the base version.
>
> Please revert back if the problem is still not clear.
>
> Regards,
> Montek
>
>
>
>
>
>
> Tobias Bocanegra wrote:
> >
> > hi,
> > i don't understand what you are trying to achieve here. the
> > jcr:frozenNode/jcr:uuid is the uuid of the frozen node - and i'm not
> > sure for what you use this?
> >
> > however, there could be a problem deleting a version while you are
> > iterating of the them.
> > further i don't think that you can delete a version as long it's still
> > referenced as base version.
> >
> > regards, toby
> >
> > On 12/7/07, monteka <[EMAIL PROTECTED]> wrote:
> >>
> >> Hi,
> >>
> >> I am new to the Jackrabbit world. I have just started working on a Portal
> >> based project for reporting solution. We are using Jackrabbit 1.3.
> >>
> >> I am stuck with the following problem:
> >>
> >> I have a versionable node which has a default jcr:rootVersion and
> >> additional
> >> versions.
> >>
> >> Now I can add any number of versions (i.e. different versions of the same
> >> template).
> >>
> >> Problem:
> >>
> >> I have the following API that takes care of deleting the selected version
> >> of
> >> the template (identified by the UUID):
> >>
> >> public Object doInJcr(Session session) throws IOException,
> >> RepositoryException {
> >>
> >> String uuid = null;
> >> try {
> >> uuid = (String) PropertyUtils.getProperty(bean,
> >> "uuid");
> >> } catch (IllegalAccessException iae) {
> >> log.error("Error in getting property 'uuid'",
> >> iae);
> >> } catch (InvocationTargetException ite) {
> >> log.error("Error in getting property 'uuid'",
> >> ite);
> >> } catch (NoSuchMethodException nsme) {
> >> log.error("Error in getting property 'uuid'",
> >> nsme);
> >> }
> >>
> >> Node root = session.getRootNode();
> >>
> >> Node domainRoot = getDomainRoot(root);
> >>
> >> Node domainNode = domainRoot.getNode(this.nodeName);
> >> //nodeName is "template"
> >>
> >> VersionHistory history = domainNode.getVersionHistory();
> >> Version previous = null;
> >>
> >> for (VersionIterator vit = history.getAllVersions();
> >> vit.hasNext();) {
> >>
> >> Version version = vit.nextVersion();
> >> Node frozen = version.getNode("jcr:frozenNode");
> >>
> >> if (uuid.equals(frozen.getUUID())) {
> >> if
> >> (version.equals(domainNode.getBaseVersion())) {
> >>
> >> if
> >> (history.getAllVersions().getSize() >
> >> 2) {
> >>
> >> domainNode.restore(previous,
> >> true);
> >>
> >> history.removeVersion(version.getName());
> >> } else {
> >> domainNode.remove();
> >> }
> >> } else {
> >>
> >> history.removeVersion(version.getName());
> >> }
> >> break;
> >> } else {
> >> previous = version;
> >> continue;
> >> }
> >> }
> >>
> >> session.save();
> >> return null;
> >> }
> >>
> >> Cases:
> >>
> >> Case #1
> >> --------
> >> Say my version graph is like this:
> >>
> >> VH (Version History) has child nodes VR (jcr:RootVersion) and V1
> >>
> >> I have only 1 version (template), V1 and I choose to delete it - WORKING
> >> AS
> >> EXPECTED
> >>
> >> Case #2
> >> --------
> >>
> >> Say my version graph is like this:
> >>
> >> VH (Version History) has child nodes VR (jcr:RootVersion) , V1 and V2
> >>
> >> I want to delete version V2 - WORKING AS EXPECTED
> >>
> >> Case #3
> >> --------
> >>
> >> Say my version graph is like this:
> >>
> >> VH (Version History) has child nodes VR (jcr:RootVersion) , V1, V2 and V3
> >>
> >> I want to delete version V2 - WORKING AS EXPECTED
> >>
> >> Case #4
> >> --------
> >>
> >> Say my version graph is like this:
> >>
> >> VH (Version History) has child nodes VR (jcr:RootVersion) , V1 and V2
> >>
> >> I want to delete version V1 - NOT WORKING
> >>
> >> I am unable to reconnect the VR to the second version, V2.
> >>
> >> Actually when i try to delete the first version V1, the base node gets
> >> deleted and so I loose the following versions also.
> >>
> >> Expected behavior is that I should be able to delete any version
> >> (template).
> >>
> >> Please advice ASAP.
> >>
> >> Thank you.
> >> --
> >> View this message in context:
> >> http://www.nabble.com/Problem-deleting-the-first-version-in-version-graph-tf4961225.html#a14209765
> >> Sent from the Jackrabbit - Users mailing list archive at Nabble.com.
> >>
> >>
> >
> >
> > --
> > -----------------------------------------< [EMAIL PROTECTED] >---
> > Tobias Bocanegra, Day Management AG, Barfuesserplatz 6, CH - 4001 Basel
> > T +41 61 226 98 98, F +41 61 226 98 97
> > -----------------------------------------------< http://www.day.com >---
> >
> >
>
> --
> View this message in context:
> http://www.nabble.com/Problem-deleting-the-first-version-in-version-graph-tp14209765p14370045.html
> Sent from the Jackrabbit - Users mailing list archive at Nabble.com.
>
>
--
-----------------------------------------< [EMAIL PROTECTED] >---
Tobias Bocanegra, Day Management AG, Barfuesserplatz 6, CH - 4001 Basel
T +41 61 226 98 98, F +41 61 226 98 97
-----------------------------------------------< http://www.day.com >---