Configurable Workflow - AutoAssignAction and multiple Actions

20 views
Skip to first unread message

J

unread,
Aug 17, 2020, 12:36:11 PM8/17/20
to DSpace Technical Support
Hi all,

first of all: sorry if this is a repost - I tried sending this directly via email to the list, but didn't see the message in the list of conversations for a couple of days.

I'm starting to use the configurable workflow in one of our projects, and I keep getting errors when trying to use the AutoAssignAction and try to combine multiple actions in one step.

I want the current user to directly select the next reviewer after the review action is completed.

First problem: The reviewer selected by the selectrevieweraction is not able to complete the review step. When a submitting user selects another user as a reviewer, this reviewer is not able to complete the review step. Accepting the review ends in a NullPointerException at:

org.dspace.xmlworkflow.WorkflowRequirementsServiceImpl.addFinishedUser(WorkflowRequirementsServiceImpl.java:139)

The selectrevieweraction sets the current user as the claimed user. Because of that

InProgressUser ipu = inProgressUserService.findByWorkflowItemAndEPerson(c, wfi, user);

result in ipu being NULL. I tried to fix this by changing the following line (#112 in createTaskForEPerson()) in the AutoAssignAction from

workflowRequirementsService.addClaimedUser(c, wfi, step, c.getCurrentUser());

to

workflowRequirementsService.addClaimedUser(c, wfi, step, user);

After that, the reviewer is able to complete the review action. But this change seems to result in another failure, when I try to use this combination of actions:

<action id="singleuserreviewaction"/>
<action id="selectrevieweraction"/>

As far as I could debug the situation until now, after that change in createTaskForEPerson() there seem to be two similar entries in the "cwf_claimtask"-table during the selectrevieweraction. This results in a failure of UserSelectionAction.isAuthorized() as a unique entry in that table for a certain user and a certain workflow item is required.

Is the change for the first problem correct (-> addClaimedUser())?
Is there another problem with the selectrevieweraction that I'm not aware of?
Should the combination of the two actions work that way?

Any help with this is highly appreciated.

Regards
Johannes

P.S. I'm working on version 6.3 and included the (not merged) bugfix https://jira.lyrasis.org/browse/DS-3941 in my local code. 
Reply all
Reply to author
Forward
0 new messages