Participant workitem can't contact server
Accepted answer
Comments
Hi Ralph,
Set additionalParams = new HashSet();
additionalParams.add(IExtensionsDefinitions.UPDATE_PARENT_DURATION_EXTENSION_ID);
workItemServer.saveWorkItem3(parent, null, null,additionalParams);
Really, really read the whole post. You also might have to refetch the work item to avoid stale data issues.
Only the line you mention just passes the additional save parameter. You also have to check in the beginning of the participant if this parameter is provided. If so, this indicates the participant runs as a result of its own save and you must exit the participant to terminate the recursion.
I will read the whole post, I'm just trying to get as much out of you as I can while your at work (different time zones). I thought the line below fetched the work item again and would prevent it from being stale :( I had a stale data issue and thought this would solve it. All I want to be able to do is modify a work item. I don't even know how to properly do this. I've read doco that has a link that tells me to read more doco and then another link to read more doco (I'm getting there but I'm running out of time).
your participant is called cause someone else JUST changed the workitem, and then change process is not complete yet. then in the middle of the last change, you create ANOTHER change. now two in progress at once.
As Ralph said, you need to use saveWorkitem3(), to pass the additional parm , so that you can check the additional parm on the participant invocation to avoid recursion.
You load WC2 but then you modify and save WC.....
I read this article and implemented using the same method as they did with my package as the string in the Set, and it it worked. It's alive.......ALIVE!