Versioning question.

46 views
Skip to first unread message

Jose Blanco

unread,
Oct 19, 2021, 8:46:59 PM10/19/21
to DSpace Technical Support
I'm using version 6.3.  I made a change to my instance to not  have the handle and doi created at the end of the submission process.  Normally this would happen in this line of code:


So I made a change so that from this line of code:


I have added the following code:

           try

           {

              identifierService.register(context, item);

           } catch (IdentifierException e) {

              throw new RuntimeException("Can't create an Identifier!", e);

           }


And I removed the call to identifierService.register from InstallItemServiceImpl.java.  So basically, I'm moving the call to identifierService.register to the start of the submission, rather than have it at the end of the submission  (Long story as to why I'm doing this).

I had  versioning enabled, without using VersionedHandleIdentifierProviderWithCanonicalHandles, and the handles worked as expected.  But I want versioning to use VersionedHandleIdentifierProviderWithCanonicalHandles, and when I enable it, the handle is not retained with the previous version being .1 and so on.  If I revert back to out-of-the box, the handles look as I would expect them ( handle is retained and older versions get .x).  I'm not sure why this is happening. I must need to do something additionally to get this to work, I just don't know what that would be. 

With my code change, enabling  VersionedHandleIdentifierProviderWithCanonicalHandles makes no difference.  Versioning works the same with or without it.

What is the difference in calling identifierService.register at the start of the submission as opposed to at the end of the submission?


Any ideas?
Thank you!
-Jose

Jose Blanco

unread,
Oct 20, 2021, 4:20:12 PM10/20/21
to DSpace Technical Support
I think I have this going the way I need it.  But I do have a general question about versioning.

Say an item has 3 versions, this is what I see with my configuration:
Handle: version one => 1010/10.1
Handle: version two  => 1010/10.2
Handle: version three ( and latest ) ==> 1010/10

Which is exactly what I want to happen to the handle:  for the current version to have the original handle. But I don't see the same behavior with the DOI.  

This is what I'm seeing with the doi, for an item that has 3 versions:
DOI: version one => 123/12
DOI: version two => 123/12.2
DOI: version three ( and latest ) => 123/12.3

So with the DOI the latest version does not have the original DOI.  Is this not possible with Dspace 6.3?  I just want to make sure I'm not missing something.

Thank you!
-Jose
Reply all
Reply to author
Forward
0 new messages