Wednesday, 25 May 2016

Sub Process in SOA 12C

 Sub Process in SOA 12C


Subprocess to me is one of biggest addition to the SOA 12c.  In orchestration if we want some part of the code to be executed again and again and in different part of a BPEL process, in 11g we just have a simple choice, we need to create a separate BEPL for it and then we need to call it a service but that again create multiple issues first we need to deal with the two different processes.  


12c comes with a solution called sub process, In this example we have created a subprocess, which provide us if the employee salary and his level is correct. If not it provide us the error and based on employee experience we again retry to calculate his level and try to validate again with the same process, if validated then fine else it will throw an error.


Please download this program from the url, and open it in jdev. Deploy to the integrated server and run it.

Important part of the sub-program.

1. In the composite it very much similar to a BPEL process, which is wired with a BPEL process for the call.  In this Example EmployeeSalaryValidation Subprocess is been wired with the BPEL process.



2. In 12c a new activity is been added which is subprocess call, it allow us to call a subprocess, once added it will display all available subprocesses and then we can choose which one we want to call.


 3. It also provide the functionality call by values or call by reference. Call by value does not change anything in the calling BPEL process but reference modify the values in the calling flow also.



4. Sub process does not have any initiating activity. Its almost a fragment of BPEL process. Only parameters passed to subprocess are available to it.



Execution

1. Once process deployed it can be executed normally in the EM.




2. Once process deployed it can be executed normally in the EM, you can see the result as subprocess in the Bpel call tract.





3. Here the input and output from the process is document.








 Play with the process to get full understanding of the subprocess and all questions are welcomed.

No comments:

Post a Comment