1 of 1 people found this helpful
Hi. I believe we are working on a similar problem - If I understand your question. I have received a few helpful suggestions. The easiest (and ugliest) was to put an AND gateway and a signal intermediate event in front of each task. This way, the task is not reached until the signal event (new data) is added to the process/ksession. The other option, which I am working on now (a recommendation from salaboy I think), is implementing this functionality in a customworkitem - where the handler will not complete the work item until the required data is available. This way, one handler could be used to look for a message that was defined as a parameter in that workitem. This seems much cleaner to me.
hth (let me know if you have any thoughts)
Thank you for your suggestions, I had the same two solutions in my mind. I guess custom handler is the right way to go.
There is so little documentation about data objects in jbpm, so I was hoping I'm just doing something wrong and that it can be modeled the way I showed above (associating a data object to a task). I'm not really sure what is the intended purpose of data object arfiacts in this case, since they don't make any difference in process execution, it seems like it is just a visual element for clarification of the process, but that's all.
one additional way of achieving blocking execution until something happens is to use intermediate events. As it comes to the case described I would suggest to use conditional intermediate event that will be activated as soon as defined condition becomes true - for example an object is inserted into the session.