95-843 Service Oriented Architecture Carnegie Mellon University Assigned: Friday, June 15 Homework 5 Due: Friday, June 22, 2012, 11:59:00 PM When you have completed this project, notify your instructor by email. In your email, provide your machine name and your application and project names and any instructions that may be useful. Your instructor will log on to your enterprise manager and run the same test that you are asked to run below. * In your email, state exactly what parts of this homework you have working. * This project has been adapted from the course text "Oracle SOA Suite 11g R1 Developer's Guide" and is found in chapters 6. 1) Create a composite with an asynchronous BPEL process. This process will consult with a human user to determine if a leave request should be approved. a) Create a directory on the C: drive named LeaveRequestSchema. Place a copy of the following file in this directory. The file name is LeaveRequestSchema.xsd. b) Add an asynchronous BPEL component to your SOA composite. The input and output elements for this process are found in LeaveRequestSchema.xsd. Both the input and output of this BPEL process should point to the LeaveRequest element defined in the schema. Note that the client of this process provides a callback operation. c) Add a Human Task Component to your composite. This is done by dragging a Human Task onto the composite.The name of the Human Task is LeaveRequestToHuman. Select OK and then double click the icon on the composite to configure the Human Task. Title : Approval Required for Leave Request Look over the other options but select the defaults. d) Select the Data Tab and then the Plus symbol. We need to select the data that we will pass to the decision maker. Select Add Other Parameter. We want a LeaveRequest element from the LeaveRequestSchema.xsd. Leave Editable Via Worklist unchecked. e) Select the Assignment tab. We need to assign the Human Task to a user. Double Click on Stage 1 and change the name to Approval. Double click Edit Participant and we can add a participant to the human task. Type: Single Label: Manager Approval Use the + sign to add a participant Use weblogic for the value field. In a real application, a directory of users could be searched for this name. In our case, we know we have a user named weblogic. Select OK and Save on JDeveloper. f) Return to the composite and double click the BPEL process. Drag a Human Task from the SOA Components palette just after the ReceiveInput task in the BPEL process. g) Double click the Human Task and select LeaveRequestToHuman from the task definition drop down list. Change the Title to "Leave request for" and then use the expression builder to drill into the name found in the input variable. h) After selecting OK, note how the BPEL process has been modified. It includes a switch where additional activities might be executed depending on the human response. i) For the Task Parameters, browse to and select the LeaveRequest element from the input variable. k) Select Create Form to build a form for the decision maker. Select Auto Generate Task Form. The Project Name is LeaveRequestForm. Use the Application menu to deploy the form. Do not deploy to all instances. Deploy to the admin server. l) Visit the enterprise manager and test the web service. Notice that no response appears because a human must make the decision. m) Visit http://localhost:7001/integration/worklistapp Log on as we do with the enterprise manager. n) There should be a task waiting. Use the Actions menu to approve the request. Go back to the Enterprise Manager's testing platform and see if the BPEL process has completed.