SOA 10g Developing a Simple Hello World Process

Posted by [email protected] on Oracle Blogs See other posts from Oracle Blogs or by [email protected]
Published on Thu, 08 Apr 2010 10:54:39 +0000 Indexed on 2010/04/08 11:03 UTC
Read the original article Hit count: 1210


Softwares & Hardware Needed


  •  Intel Pentium D CPU 3 GHz, 2 GB RAM, Windows XP System ( Thats what i am using )
  •  You could as well use Linux , but please choose High End RAM
  • 10G SOA Suite from Oracle(TM) , Read Installation documents at www.Oracle.com
  •  J Developer 10.1.3.3
  •  Official Documents at http://www.oracle.com/technology/products/ias/bpel/index.html
  •  java -version Java HotSpot(TM) Client VM (build 1.5.0_06-b05, mixed mode)


  • BPEL Introduction - Developing a Simple Hello World Process

      Synchronous BPEL Process 

         This Exercise focuses on developing a Synchronous Process, which mean you give input to the BPEL Process you get output immediately no waiting at all. The Objective of this exercise is to give input as name and it greets with Hello Appended by that name example, if I give input as "James" the BPEL process returns "Hello James". 

    1. Open the Oracle JDeveloper click on File -> New Application give the name "JamesApp" you can give your own name if it pleases you. Select the folder where you want to place the application. Click "OK" 



    2. Right Click on the "JamesApp" in the Application Navigator, Select New Menu. 



    3. Select "Projects" under "General" and "BPEL Process Project", click "OK" these steps remain same for all BPEL Projects 



    4. Project Setting Wizard Appears, Give the "Process Name" as "MyBPELProc" and Namespace as http://xmlns.james.com/ MyBPELProc, Select Template as "Synchronous BPEL Process click "Next" 



    5. Accept the input and output schema names as it is, click "Finish" 



    6. You would see the BPEL Process Designer, some of the folders such as Integration content and Resources are created and few more files 



    7. Assign Activity : Allows Assigning values to variables or copying values of one variable to another and also do some string manipulation or mathematical operations 

    In the component palette at extreme right, select Process Activities from the drop down, and drag and drop "Assign" between "receive Input" and "replyOutput" 



    8. You can right click and edit the Assign activity and give any suitable name "AssignHello", 



    9. Select "Copy Operation" Tab create "Copy Operation" 



    10. In the From variables click on expression builder, select input under "input variable", Click on insert into expression bar, complete the concat syntax, Note to use "Ctrl+space bar" inside expression window to Auto Populate the expression as shown in the figure below. What we are actually doing here is concatenating the String "Hello ", with the variable value received through the variable named "input" 





    11. Observe that once an expression is completed the "To Variable" is assigned to a variable by name "result" 



    12. Finally the copy variable looks as below 



    13. It's the time to deploy, start the SOA Suite 



    14. Establish connection to the Server from JDeveloper, this can be done adding a New Application Server under Connection, give the server name, username and password and test connection. 



    15. Deploy the "MyBPELProc" to the "default domain" 



    16. http://localhost:8080/ allows connecting to SOA Suite web portal, click on "BPEL Control" , login with the username "oc4jadmin" password what ever you gave during installation 



    17. "MyBPELProc" is visisble under "Deployed BPEL Processes" in the "Dashboard" Tab, click on the it 



    18. Initiate tab open to accept input, enter data such as input is "James" click on "Post XML Button" 



    19. Click on Visual Flow 



    20. Click on receive Input , it shows "James" as input received 



    21. Click on reply Output, it shows "Hello James" so the BPEL process is successfully executed. 





    22. It may be worth seeing all the instance created everytime a BPEL process is executed by giving some inputs. Purge All button allows to delete all the unwanted previous instances of BPEL process, dont worry it wont delete the BPEL process itself :-) 



    23. It may also be some importance to understand the XSD File which holds input & output variable names & data types. 



    24. You could drag n drop variables as elements over sequence at the designer or directly edit the XML Source file. 

    © Oracle Blogs or respective owner

    Related posts about Hello World BPEL Process

    Related posts about SOA 10g