cancel
Showing results for 
Search instead for 
Did you mean: 

communication between process

arag
Confirmed Champ
Confirmed Champ

hello everybody

I need help please!

I need to pass information from one process to another process i read that i have to use signal event but i dont understand how to use it. 

how i define Signal Reference?? how i can send a signal from a service task? can i work with two process in activiti explorer??? 

Thanks

1 ACCEPTED ANSWER

daisuke-yoshimo
Star Collaborator
Star Collaborator

> how i define Signal Reference??
> how i can send a signal from a service task? can i work with two process in activiti explorer???

You can send a signal from Throw Event by specifying the same Signal Reference as Signal Catch Event.

If you want to a signal from a service task, you can use the following public api.
You specify Signal Reference as signalName.

RuntimeService.signalEventReceived(String signalName);
RuntimeService.signalEventReceived(String signalName, String executionId);

・It is necessary to pay attention to the scope of the signal.
By default, signals are broadcast process engine wide.
If you need to deliver a signal to a specific process instance only, perform correlation manually and use signalEventReceived(String signalName, String executionId) and the appropriate query mechanisms(https://www.activiti.org/userguide/#bpmnSignalEventDefinitionQuery).

・(Reference document)Activiti User Guide 8.2.4. Signal Event Definitions
https://www.activiti.org/userguide/#bpmnSignalEventDefinition

View answer in original post

1 REPLY 1

daisuke-yoshimo
Star Collaborator
Star Collaborator

> how i define Signal Reference??
> how i can send a signal from a service task? can i work with two process in activiti explorer???

You can send a signal from Throw Event by specifying the same Signal Reference as Signal Catch Event.

If you want to a signal from a service task, you can use the following public api.
You specify Signal Reference as signalName.

RuntimeService.signalEventReceived(String signalName);
RuntimeService.signalEventReceived(String signalName, String executionId);

・It is necessary to pay attention to the scope of the signal.
By default, signals are broadcast process engine wide.
If you need to deliver a signal to a specific process instance only, perform correlation manually and use signalEventReceived(String signalName, String executionId) and the appropriate query mechanisms(https://www.activiti.org/userguide/#bpmnSignalEventDefinitionQuery).

・(Reference document)Activiti User Guide 8.2.4. Signal Event Definitions
https://www.activiti.org/userguide/#bpmnSignalEventDefinition