Oracle SOA Suite 11g: Essential. Concepts. Volume II - Student Guide.
D58786GC10. Edition 1.0. September 2010. D61581. Oracle University and In
Motion ...
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Volume II - Student Guide
D58786GC10
Edition 1.0
September 2010
D61581
Oracle University and In Motion Servicios S.A. use only
Oracle SOA Suite 11g: Essential Concepts
Copyright © 2009, 2010, Oracle and/or its affiliates. All rights reserved.
Bijoy Choudhury
Disclaimer
Swarnapriya Shridhar
This document contains proprietary information and is protected by copyright and other intellectual property laws. You may copy and print this document solely for your own use in an Oracle training course. The document may not be modified or altered in any way. Except where your use constitutes "fair use" under copyright law, you may not use, share, download, upload, copy, print, display, perform, reproduce, publish, license, post, transmit, or distribute this document in whole or in part without the express authorization of Oracle.
Technical Contributors and Reviewers Cathy Lippert Dave Berry Holger Dindler Rasmussen Heidi Buelow Demed L'Her Prasen Palvankar Tom Hardy David Shaffer James Mills Jai Kasi Magnus Kling Mathias Kullberg Matthew Slingsby Vasiliy Strelnikov Vikas Jain Glenn Stokol Pete Laseau Nagavalli Pataballa William Prewitt
Editors Vijayalakshmi Narasimhan Daniel Milne Arijit Ghosh
Graphic Designers Rajiv Chandrabhanu Satish Bettegowda
Publishers Giri Venugopal Michael Sebastian Almeida Jobi Varghese
The information contained in this document is subject to change without notice. If you find any problems in the document, please report them in writing to: Oracle University, 500 Oracle Parkway, Redwood Shores, California 94065 USA. This document is not warranted to be error-free. Restricted Rights Notice If this documentation is delivered to the United States Government or anyone using the documentation on behalf of the United States Government, the following notice is applicable: U.S. GOVERNMENT RIGHTS The U.S. Government’s rights to use, modify, reproduce, release, perform, display, or disclose these training materials are restricted by the terms of the applicable Oracle license agreement and/or the applicable U.S. Government contract. Trademark Notice Oracle and Java are registered trademarks of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Authors
I
Introduction Course Objectives I-2 Course Agenda: Day 1 I-3 Course Agenda: Day 2 I-4 Course Agenda: Day 3 I-5 Summary I-6
1
Service-Oriented Architecture Concepts Course Road Map 1-2 Objectives 1-3 Definition: Service-Oriented Architecture (SOA) 1-4 Why SOA? 1-5 Enterprise Challenge 1-7 Point-to-Point Integration 1-8 Enterprise Application Integration 1-9 Example of Application-Centric Integration 1-10 Integrating Solutions and Benefits with SOA 1-11 SOA Further Defined 1-12 Moving Toward Service-Centric Integration 1-13 SOA: A Paradigm Shift 1-14 The Eight-Domain Model Approach for SOA 1-15 Quiz 1-17 Building an SOA Reference Architecture: From Architecture Drivers to a Roadmap 1-18 SOA Reference Architecture 1-19 SOA Reference Architecture: Service Consumers 1-21 SOA Reference Architecture: Service Classification 1-22 SOA Reference Architecture: Service Providers 1-23 Reference Architecture: Example 1-24 Standards That Enable SOA 1-25 Quiz 1-27 Service and Web Service 1-28 Types of Service Access and Implementation 1-29 Ways to Integrate Services 1-30 Designing with an SOA Approach 1-31 Creating Service Portfolios 1-32 SOA Workflow and Orchestration 1-33 Implementing SOA: General Concepts 1-34 Quiz 1-35 Define SOA Governance 1-36 Identifying the Need of SOA Governance 1-37 SOA Governance Framework 1-38 Quiz 1-39 Course Practice Scenario: Purchase Order Processing 1-40 Summary 1-41 Practice 1 Overview: Preparing the Business Flow Diagram 1-42 iii
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Contents
Implementing SOA with Oracle SOA Suite Course Roadmap 2-2 Objectives 2-3 Basic Components of an SOA Infrastructure 2-4 Oracle SOA Suite 11g Components 2-5 Introduction to Service Infrastructure 2-7 Introducing SCA in Oracle SOA Suite 11g 2-8 Defining a Composite Application 2-9 Introducing Oracle Mediator Component 2-11 Describing the Features of Oracle Mediator Component 2-12 Introducing Oracle BPEL Process Component 2-13 Introducing Business Rules Component 2-14 Introducing Human Task Component 2-15 Quiz 2-16 Introduction to Business Activity Monitoring 2-17 Monitoring Services with BPEL and BAM 2-18 Oracle Enterprise Manager 2-19 Oracle WebLogic Server 10.3 2-21 WebLogic Server Domain 2-22 WebLogic Server Servers 2-24 Administration Server 2-25 Managed Server 2-26 WebLogic Server Machines 2-27 SOA Development with Oracle JDeveloper 2-28 Creating Connections in Oracle JDeveloper 2-29 Creating an Application Server Connection in Oracle JDeveloper 2-31 Goals of Implementing SOA Application with Oracle SOA Suite 11g 2-33 Quiz 2-34 Summary 2-36 Practice 2 Overview: Creating Connections in JDeveloper 2-37
3
SOA Governance and Service Life-Cycle Management Course Roadmap 3-2 Objectives 3-3 Define Service Life-Cycle Management 3-4 Phases of Service Life Cycle 3-5 The Need for Service Life-Cycle Management 3-6 Define SOA Governance 3-7 Relationship of Governance Disciplines 3-8 The Need for SOA Governance 3-9 Benefits of SOA Governance 3-10 Center of Excellence: Key to SOA Success 3-11 Example of Governance Organizational Structure 3-12 Quiz 3-13 Service Life-Cycle Governance 3-14 Service Management 3-16 Service Portfolio 3-17 Policy Manager 3-18 Service Routing 3-19 Service Versioning 3-20 iv
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
2
4
Designing Services for SOA Implementations Course Roadmap 4-2 Objectives 4-3 Defining Services 4-4 Services Are SOA Building Blocks 4-5 Service Contract 4-6 Service Design 4-8 Service Granularity 4-9 Service Design Principles 4-10 Designing Coarse-Grained Interfaces 4-12 Quiz 4-13 Service Classifications 4-14 Connectivity Services 4-15 Data Services 4-16 Business Services 4-17 Business Process Services 4-18 Presentation Services 4-19 Service Infrastructure 4-20 Quiz 4-21 Basic Service Interaction Patterns 4-22 Synchronous Interactions 4-23 Asynchronous Interactions 4-24 Choosing Service Implementation Styles 4-25 Fundamentals for Creating a Service 4-27 Building a Portfolio of Services 4-28 Describing a Web Service 4-29 Web Service Standards 4-30 Web Service Architecture 4-31 Service Artifacts 4-33 XML Schema Definitions 4-34 Defining Messages in XML Schemas 4-35 Web Services Description Language 4-36 WSDL Model 4-37 Defining Service Interfaces in WSDL 4-38 Quiz 4-39 Adapter Services 4-40 Describing Technology Adapters 4-41 v
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
SLA Management 3-21 Quiz 3-22 Constituents of SOA Governance Model 3-23 End-to-End SOA Governance 3-25 End-to-End SOA Governance: SOA Asset Management 3-26 End-to-End SOA Governance: Policy Management and Enforcement 3-27 End-to-End SOA Governance: Consumer Management 3-28 End-to-End SOA Governance: SOA Monitoring and Management 3-29 SOA Governance Solution 3-30 Oracle SOA Governance Solution 3-31 Quiz 3-32 Summary 3-33 Practice 3 Overview: Defining Policies for a Group of Services 3-34
5
Creating a Composite Application Course Roadmap 5-2 Objectives 5-3 Service Component Architecture 5-4 Components and Composites 5-6 SCA Components 5-7 SCA Composite 5-8 SCA Bindings 5-9 SCA Policy Framework 5-10 Quiz 5-11 Service Data Objects (SDO) 5-12 SDO Data Architecture 5-13 SCA and SDO 5-14 Creating an SOA Composite in JDeveloper 11g 5-15 Describing the SOA Composite Editor 5-16 Creating Exposed Services 5-18 Creating SOA Components 5-19 Examining the SCA Descriptor 5-20 Quiz 5-21 Adding a Mediator Component 5-22 Adding a BPEL Process Component 5-23 Comparing BPEL and Mediator 5-24 Examining the JDeveloper Workspace, Projects, and File Structure 5-25 Editing a Component in a Composite 5-26 Creating External References 5-27 Creating Wires 5-28 Creating Wires Modifies Connected Elements 5-29 Exposing Components as an External Service 5-30 Quiz 5-31 Deploying an SOA Composite Application 5-32 Summary 5-33 Practice 5: Overview Creating an SOA Composite Application 5-34
6
Managing and Monitoring SOA Composite Applications Course Roadmap 6-2 Objectives 6-3 Overview of Managing SOA Applications 6-4 Managing with Oracle Enterprise Manager 6-5 Oracle Enterprise Manager Fusion Middleware Control 6-6 Accessing the SOA Infrastructure Home Page 6-7 Accessing a Composite Application Home Page 6-8 Example Composite Application Home Page 6-9 Deploying a Composite Application 6-10 Deploying SOA Composite Applications 6-11 Initiating an SOA Composite Application Test Instance 6-12 Tracking Message Flow 6-13 vi
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Packaged Application and Legacy Adapters 4-42 Quiz 4-43 Summary 4-44 Practice 4: Overview Designing Services for SOA Implementations 4-45
7
Working with Mediator Components Course Roadmap 7-2 Objectives 7-3 Introducing Oracle Mediator 7-4 Oracle Enterprise Service Bus and Mediator 7-5 Oracle Mediator Features 7-6 Event Delivery Network 7-7 Introducing Business Events 7-8 Event Handling 7-10 Content-Based and Header-Based Routing 7-11 Synchronous/Asynchronous Interactions 7-12 Service Virtualization 7-13 Validations 7-14 Error Handling 7-15 Transformations 7-16 Quiz 7-17 Creating an Oracle Mediator Component 7-18 Mediator Component Creation Options 7-19 Define Interface Later 7-20 Viewing the Mediator Source Code 7-22 Modifying a Mediator Component 7-23 Deleting a Mediator Component 7-24 Specifying Mediator Component Routing Rules 7-25 Introducing Routing Rules 7-26 Accessing Mediator Routing Rules 7-28 Defining Mediator Routing Rules 7-29 Specifying a Target Service: Example 7-31 Adding a Transformation to a Mediator Component 7-32 Filtering Messages 7-33 Specifying Sequential or Parallel Execution 7-35 Quiz 7-36 When to Use Business Events? When to Invoke a Service? 7-37 Summary 7-38 Practice 7: Overview Creating a Mediator Service Component 7-39
vii
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Working with the Flow Trace 6-14 Working with the Component Audit Trail Page 6-15 Quiz 6-16 Managing the State of Deployed SOA Composite Applications 6-17 Monitoring and Deleting Specific SOA Composite Application Instances 6-18 Recovering from SOA Composite Application Faults 6-19 Undeploying a Composite Application 6-21 Quiz 6-22 Summary 6-23 Practice 6: Overview Managing and Monitoring Composite Applications 6-24
Orchestrating Services with a BPEL Component Course Roadmap 8-2 Objectives 8-3 Process Orchestration Concepts 8-4 Introducing Business Process Execution Language (BPEL) 8-5 Creating a BPEL Process 8-7 Oracle BPEL Process Designer 8-8 Designing the BPEL Process 8-9 Quiz 8-10 Developing a BPEL Process 8-11 BPEL Activity Types 8-12 Grouping Activities by Using a BPEL Scope 8-14 Adding Activities to a Scope 8-15 Communicating Data with a BPEL Process 8-16 BPEL Variables 8-17 Choosing Global or Local Variables 8-19 The Assign Activity 8-21 Creating Assign Operations 8-22 Copying Data from Source to Target 8-23 Using the XPath Expression Builder 8-24 Quiz 8-25 Partner Links and Service Invocation 8-26 Partner Links, Partner Link Types, and Roles 8-27 Synchronous Services 8-28 Synchronous Process Structure: HelloWorld Example 8-29 Asynchronous Service 8-30 Asynchronous BPEL Process Structure 8-31 Creating a Partner Link 8-32 Configuring a Partner Link 8-33 Invoking a Synchronous Service 8-34 Conditionally Branching with a Switch Activity 8-35 Adding a Switch Activity 8-36 Configuring Branches of a Switch Activity 8-37 Summary 8-38 Practice 8: Overview Creating a BPEL Service Component 8-39
9
Working with the Human Task Component Course Roadmap 9-2 Objectives 9-3 What Is a Human Task? 9-4 Human Workflow Diagram 9-5 Introduction to Human Workflow Concepts 9-7 Implementing Human Workflow Services 9-8 Exploring Workflow Exchange Patterns 9-9 Describing a Workflow as a Service 9-10 Quiz 9-11 Adding a Human Task Component to an SOA Composite 9-12 The Human Task Editor 9-13 Working with Human Workflow in BPEL 9-14 Creating a Human Task in BPEL 9-15 Configuring the Human Task 9-16 viii
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
8
10 Implementing a Business Rules Component Course Roadmap 10-2 Objectives 10-3 Introducing Business Rules Technology 10-4 Declarative Rule Concepts 10-5 Rule Inference Concepts 10-6 Reasons for Using Rules Technology 10-7 Guidelines for Selecting Rules Use Cases 10-8 Introducing Oracle Business Rules 10-9 Introducing Oracle Business Rules Concepts 10-11 Developing a Rule-Enabled Application 10-12 Defining Oracle Business Rules Development Concepts 10-13 Quiz 10-14 Creating a Dictionary for Rule Definitions 10-15 Working with the Rules Editor in JDeveloper 10-16 Creating XMLFact Entries 10-18 Working with Bucketsets 10-19 Creating a Bucketset 10-20 Creating Oracle Business Rules Globals 10-21 Creating a Ruleset 10-22 Identifying the Structure of a Rule 10-23 Creating a Rule 10-24 Creating a Rule Test 10-25 Creating a Rule Action 10-26 Working with Decision Tables 10-27 Creating Conditions and Rules in Decision Tables 10-29 Creating Actions in Decision Tables 10-31 Working with Decision Functions 10-33 Integrating Rules with a BPEL Process 10-34 Adding a Business Rule Activity 10-35 Summary 10-38 Practice 10: Overview Implementing a Business Rule 10-39 11 Securing Services and Composite Applications Course Roadmap 11-2 Objectives 11-3 Introduction to Web Services Security 11-4 Need for Web Services Security 11-5 Web Services Security Approaches 11-6 WS-Security 11-8 WS-Security Fundamentals 11-9 Quiz 11-11 ix
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Adding Task Parameters 9-17 Setting the Task Parameter Values 9-18 Generating a Task Form for the Worklist 9-19 Accessing the Worklist Application 9-20 Viewing Task Information 9-21 Managing Task Assignments 9-22 Summary 9-23 Practice 9: Overview Creating a Human Task to Approve Orders 9-24
Appendix A: Practices and Solutions Appendix B: Introduction to Linux What Is Linux? B-2 What Is Oracle’s Strategy for Linux? B-3 File System and Basic Directory Structure B-4 Shell Commands B-6 Environment-Based Commands B-7 Information-Based Commands B-9 File System Commands B-11 Common vi Editing Commands B-13 Common FTP Communication Commands B-15 Archive Utilities B-17 Shortcuts and Tips B-19 Appendix C: Perform Common Tasks with Oracle JDeveloper Objectives C-2 Create a Database Connection C-3 Create an Application Server Connection C-4 Create an Application C-6 Create an Empty Project C-8 Create an SOA Project C-9 Create a Project from Existing Sources C-10 Deploy an SOA Composite Application C-13 Summary C-15 Appendix D: SOA Adoption Planning Principles Objectives D-2 SOA Adoption D-3 SOA Adoption Planning Activities D-4 SOA Adoption Planning Activities: Completing the Stakeholder Community D-5 SOA Adoption Planning Activities: Moving Through the Change Curve D-6 SOA Adoption Planning Activities: Establishing "Line-of-Sight" Goals D-7 SOA Adoption Planning Activities: Establish a Milestone Delivery Plan D-8 SOA Adoption Planning Activities: Usage of Metrics D-9 SOA Adoption Planning Activities: Enabling Business Innovation D-10 SOA Adoption Planning Activities: Usage of Tools and Processes D-11 The Need for an SOA Reference Architecture D-12 x
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Oracle Web Service Manager 11-12 Components of Oracle Web Services Manager Architecture 11-13 Oracle Web Services Manager Policy Framework 11-14 Introduction to Policies 11-15 Policy Interceptor Pipeline 11-16 Policy Assertions 11-17 Quiz 11-18 Managing SOA Composite Application Policies 11-19 Attaching Security Policy to a Service 11-20 Quiz 11-21 Summary 11-22 Practice 11 Overview: Attaching Policies to Web Services 11-23
Glossary
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Developing the SOA Reference Architecture D-13 Developing the SOA Reference Architecture: Align IT with Business D-14 Developing the SOA Reference Architecture: Develop a Baseline D-15 Developing the SOA Reference Architecture: Create SOA Reference Architecture D-16 Developing the SOA Reference Architecture: Create SOA Infrastructure Roadmap D-17 SOA Governance Model D-18 Example of an SOA Governance Model D-19 Summary D-20
xi
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Appendix A Practices and Solutions
Practices Overview ............................................................................................................. 3 Practices for Lesson 1 ......................................................................................................... 4 Practice 1-1: Specifying Tasks in Workflow for a Purchase Order Processing Business Scenario........................................................................................................................... 5 Practices for Lesson 2 ......................................................................................................... 8 Practice 2-1: Creating a JDeveloper Connection to the Application Server ................... 9 Practice 2-2: Browsing an SOA Composite in Oracle JDeveloper 11g........................ 13 Practices for Lesson 3 ....................................................................................................... 17 Practice 3-1: Paper-Based Questions ............................................................................ 18 Practices for Lesson 4 ....................................................................................................... 21 Practice 4-1: Modifying an XSD Document ................................................................. 22 Practice 4-2: Modifying a WSDL Document ............................................................... 26 Practices for Lesson 5 ....................................................................................................... 35 Practice 5-1: Deploying a Prebuilt SOA Composite by Using Oracle JDeveloper 11g 36 Practice 5-2: Creating an SOA Composite Application Workspace ............................ 38 Practice 5-3: Adding a Service Interface to the SOA Composite ................................. 43 Practice 5-4: Adding an External Reference to the SOA Composite ........................... 48 Practices for Lesson 6 ....................................................................................................... 51 Practice 6-1: Testing an SOA Composite by Using Oracle Enterprise Manager Fusion Middleware Control ...................................................................................................... 52 Practice 6-2: Viewing the SOA Composite Instance Details........................................ 56 Practices for Lesson 7 ....................................................................................................... 59 Practice 7-1: Creating a Mediator to Route Order Request .......................................... 60 Practice 7-2: Adding Routing Rules to the SOA Composite ........................................ 67 Practice 7-3: Deploying and Testing the SOA Composite ........................................... 71 Practices for Lesson 8 ....................................................................................................... 76 Practice 8-1: Creating an Order Approval BPEL Process ............................................ 78 Practice 8-2: Modifying the Mediator in the SOA Composite ..................................... 93 Practice 8-3: Deploying and Testing the SOA Composite ........................................... 99 Practices for Lesson 9 ..................................................................................................... 103 Practice 9-1: Creating a Human Task for Manual Order Approval ............................ 105 Practice 9-2: Accessing the Human Task from the BPEL Process............................. 111 Practice 9-3: Deploying and Testing the SOA Composite ......................................... 120 Practices for Lesson 10 ................................................................................................... 126 Practice 10-1: Adding a Business Rule to POProcessingComposite .......................... 128 Practice 10-2: Accessing the Business Rule from the BPEL Process ........................ 134 Practice 10-3: Deploying and Testing the SOA Composite ....................................... 144 Practices for Lesson 11 ................................................................................................... 146 Practice 11-1: Attach username_token_security_policy to the receivePO Service Endpoint ...................................................................................................................... 147 Practice 11-2: Attach log_policy to the receivePO Service Endpoint ........................ 152
Oracle SOA Suite 11g: Essential Concepts A - 2
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Table of Contents
The goal of the course practices is to progressively build the Purchase Order Processing SOA composite application. Purchase Order Processing SOA Composite Application (POProcessingComposite)
The Purchase Order Processing composite application (POProcessingComposite) is built to process and approve a purchase order. The purchase order details can come from any source (in our case, a testing page). The credit card status for the customer is validated and if the credit card is good, the order continues. An order for a large purchase price requires a manual approval step. Finally, the order is written to a text file.
Oracle SOA Suite 11g: Essential Concepts A - 3
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practices Overview
The goal of the practices in this lesson is to investigate and identify the various business processes that you can define and associate with the purchase order processing application. Deduce a workflow diagram by segregating different task and business processes in a sequential flow for the purchase order processing business process scenario. In this practice, you specify the missing links in the given processes workflow diagram for the purchase order processing business process scenario.
Oracle SOA Suite 11g: Essential Concepts A - 4
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practices for Lesson 1
In this practice, you specify the missing links in the purchase order processing business process workflow diagram. The POProcessingComposite SOA composite is described in the following sequence of steps. 1. Details of the purchase order are received. 2. Small order quantities (quantity less than 10 units) are approved automatically. 3. Large order quantities (quantities greater than or equal to 10 units) pass through a validation and approval process (where the customer’s credit card status is validated). 4. If the credit card status is invalid, the order is rejected and the status information is written to a text file. 5. If the credit card status is valid, the total order amount is evaluated. 6. If the total order amount is less than $5000, the order is auto-approved and the order details are written to the text file. 7. If the order amount is greater than or equal to $5000, the order passes through a manual approval process. 8. If the status of the manual approval is “approved,” the order details are written to a text file with the status approved. 9. If the status of the manual approval is “rejected,” the status detail (rejected) is written to the text file. Based on the application description, fill in the missing business process links (annotated with question marks) in the following business process flow diagram.
Oracle SOA Suite 11g: Essential Concepts A - 5
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 1-1: Specifying Tasks in Workflow for a Purchase Order Processing Business Scenario
New Order
?
?
Status=approved
Text File
>= 10
?
invalid
Status
Status=invalidCreditCard ? Get Amount
Amount
? Status=approved
>= $5000
?
Approval
Approved Status = ?
Rejected
Status=rejected
Oracle SOA Suite 11g: Essential Concepts A - 6
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 1-1: Specifying Tasks in Workflow for a Purchase Order Processing Business Scenario (continued)
Solution to Practice 1-1:
New Order
Check Quantity
< 10 Status=approved
Text File
>= 10 Get Credit Card Status
invalid
Status
Status=invalidCreditCard valid Get Amount
Amount
< $5000 Status=approved
>= $5000 Get Manual Approval
Approval
Approved Status=approved
Rejected
Status=rejected
Oracle SOA Suite 11g: Essential Concepts A - 7
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 1-1: Specifying Tasks in Workflow for a Purchase Order Processing Business Scenario (continued)
The goal of the practices for this lesson is to set up the practice development environment. In this practice, you start Oracle JDeveloper 11g in the Windows environment and configure appropriate connections to Oracle WebLogic Server. In this practice set, you perform the following key tasks: 1. Create an application server connection in JDeveloper to WebLogic Server. 2. Browse an existing SOA composite application in JDeveloper.
Oracle SOA Suite 11g: Essential Concepts A - 8
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practices for Lesson 2
In this practice, you create an Application Server connection for your SOA Server to enable you to deploy SOA Composite application projects and other services. To complete this task, perform the following steps: 1) Start the WebLogic Administration server by double-clicking the Start WebLogic Admin Server icon on the desktop and wait until the server is started. You can verify this when you see the text similar to the following display in the terminal window:
2) Start the SOA Server (managed server), by double-clicking the Start SOA Server icon on the desktop, wait until the server is started. You can verify this when you see the text similar to the following display in the terminal window: INFO: FabricProviderServlet.stateChanged SOA Platform is running and accepting requests
3) On the Desktop, double-click the JDeveloper 11g desktop icon to start JDeveloper. 4) On the Migrate User Settings window, click No.
5) On the JDeveloper window, click the View > Resource Palette menu. 6) On the JDeveloper Resource Palette window, click the New (icon) > New Connection > Application Server
7) On the Create Application Server Connection wizard pages, enter the information specified in the following table: Step Screen/Page Description a. Create Application Server
Choices or Values On the Name and Type page enter:
Oracle SOA Suite 11g: Essential Concepts A - 9
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 2-1: Creating a JDeveloper Connection to the Application Server
Step Screen/Page Description Connection – Step 1 of 5
Choices or Values Connection Name: MyApplicationServerConnection
b.
Create Application Server Connection – Step 2 of 5
c.
Create Application Server Connection – Step 3 of 5
d.
Create Application Server Connection – Step 4 of 5
Accept default for other items, and click Next On the Authentication page enter: Username: weblogic Password: welcome1 Click Next On the Configuration page enter: WLS Domain: soa_domain Accept defaults for remaining fields, and click Next. On the Test page: Click Test Connection and ensure you have a success for all eight tests, click Finish.
Note: Use the following screenshots if required as a guide supporting steps described in the preceding table of instructions: a)
Oracle SOA Suite 11g: Essential Concepts A - 10
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 2-1: Creating a JDeveloper Connection to the Application Server (continued)
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
c)
Oracle University and In Motion Servicios S.A. use only
Practice 2-1: Creating a JDeveloper Connection to the Application Server (continued) b) Username: weblogic Password: welcome1
Oracle SOA Suite 11g: Essential Concepts A - 11
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 2-1: Creating a JDeveloper Connection to the Application Server (continued) d)
Oracle SOA Suite 11g: Essential Concepts A - 12
In this practice, you open an existing SOA composite application in JDeveloper and identify the various service components. In order to open an existing application in JDeveloper, execute the following steps: 1) In the Application Navigator pane, click Open Application (or you can select File > Open).
2) Navigate to the D:\labs\Application_02\CreditCardValidation directory, and open the CreditCardValidation.jws file.
Oracle SOA Suite 11g: Essential Concepts A - 13
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 2-2: Browsing an SOA Composite in Oracle JDeveloper 11g
3) In the Open Warning window, click Yes.
4) You see the application files and artifacts in the Application Navigator pane. Doubleclick composite.xml in the Application Navigator pane to open the SOA Composite editor.
5) View the SOA composite service component (a single BPEL process) and the exposed service in the SOA Composite editor. Also view the SOA service components and service adapters in the Component palette.
Oracle SOA Suite 11g: Essential Concepts A - 14
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 2-2: Browsing an SOA Composite in Oracle JDeveloper 11g (continued)
Optionally, double-click the CreditCardValidationProcess BPEL process to open the BPEL designer and view the BPEL activities. 6) Close the CreditCardValidation workspace and remove it from the JDeveloper IDE. a) From the Application menu, select Close Application.
Oracle SOA Suite 11g: Essential Concepts A - 15
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 2-2: Browsing an SOA Composite in Oracle JDeveloper 11g (continued)
b) In the Confirm Close Application dialog box, select the “Close application and remove it from IDE” option and click OK.
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 2-2: Browsing an SOA Composite in Oracle JDeveloper 11g (continued)
Oracle SOA Suite 11g: Essential Concepts A - 16
In this practice, you work on a set of paper-based questions that covers service life-cycle management and SOA governance.
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practices for Lesson 3
Oracle SOA Suite 11g: Essential Concepts A - 17
Select the most appropriate option or options for the following questions: 1. Service life-cycle management ensures: a. Service reusability and versioning b. Quality, performance, and proper usage of services c. Service visibility d. Web service development 2. What is the need for service life-cycle management? a. Ensures flexible categorization of services b. Enables reporting on key metrics c. Ensures proper use of services d. Enables automated capture of business processes and services 3. Which two governance disciplines is SOA governance an extension of? a. IT governance b. EA governance c. Corporate governance d. Service governance 4. SOA governance is needed because it: a. Ensures that project investments yield business value b. Controls dependencies, manages the impact of change, and enforces policies c. Promotes consolidation, standardization, and reuse thus enabling cost saving d. All of the above 5. Identify the characteristics of service management a. Centralized configuration and monitoring b. Policy-based routing and security c. Service registration, versioning, and discovery d. Build and compose service 6. Service directory can be defined as the place where: a. Services are registered b. Services are routed c. Orchestration of service takes place 7. Service policy specifies: a. Authentication b. Authorization c. Encryption d. Message-level security
Oracle SOA Suite 11g: Essential Concepts A - 18
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 3-1: Paper-Based Questions
8. Identify two constituents of the SOA governance model. a. SOA portfolio governance b. Release management c. Service life-cycle governance d. SOA versioning 9. Which of the following ensures policy compliance throughout the service life cycle? a. SOA asset management b. Policy management and enforcement c. Consumer management d. SOA monitoring and management 10. Which of the following provides a structured contract between the provider and the consumer? a. SOA asset management b. Policy management and enforcement c. Consumer management d. SOA monitoring and management 11. Which of the following manages the SOA assets and associated metadata? a. SOA asset management b. Policy management and enforcement c. Consumer management d. SOA monitoring and management 12. Which of the following tracks enforcement of service contract and quality of service? a. SOA asset management b. Policy management and enforcement c. Consumer management d. SOA monitoring and management
Oracle SOA Suite 11g: Essential Concepts A - 19
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 3-1: Paper-Based Questions (continued)
Solutions to Practice 3-1 (Paper-Based Questions) 1 - a, b, and c 2 - a, b, and d 3 - a, b 4-d
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 3-1: Paper-Based Questions (continued)
5 - a, b, and c 6-a 7 - a, b, c, and d 8 - a, c 9-b 10 - c 11 - a 12 - d
Oracle SOA Suite 11g: Essential Concepts A - 20
Services are the basic building blocks for an SOA implementation. The service interface is defined and described by using Web Service Definition Language (WSDL). The message structures for communicating the required data between a service client and service operation are defined and based on the types expressed in an XML schema document (XSD). The goal of the practices in this lesson is to modify an XSD and a WSDL document by using Oracle JDeveloper 11g IDE. Your tasks in this practice set are as follows: 1. Modify a schema document by using the XSD editor in JDeveloper. 2. Modify a WSDL document by using the WSDL editor in JDeveloper.
Oracle SOA Suite 11g: Essential Concepts A - 21
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practices for Lesson 4
In this practice, you modify an XSD schema by using Oracle JDeveloper 11g. 1) Launch Oracle JDeveloper 11g (if not already open). Hint: Double-click the JDeveloper icon on the desktop to launch JDeveloper. 2) Open the Application_04.jws workspace in JDeveloper. a) From the File menu, select Open. b) Navigate to the D:\labs\Application_04 directory. Select Application_04.jws and click the Open button. c) View the projects, files, and directories of the Application_04.jws workspace in the Application Navigator pane.
3) Open and modify the response.xsd schema by using JDeveloper XSD Visual editor. a) In the Application Navigator pane, expand CreditCardValidation > Resources. b) Double-click response.xsd to open it in the XSD Visual editor pane. c) Ensure that the Schema Components option is selected in the Component palette drop-down list.
Oracle SOA Suite 11g: Essential Concepts A - 22
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 4-1: Modifying an XSD Document
d) Click and drag a sequence component from the Component palette to the output complex type in the XSD Visual editor pane.
e) Click and drag an element component from the Component palette, and add it to the sequence.
Oracle SOA Suite 11g: Essential Concepts A - 23
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 4-1: Modifying an XSD Document (continued)
f) Right-click the element component in the XSD Visual editor pane and select “Go to Properties” from the shortcut menu.
g) In the Property Inspector pane, enter the following values for the respective fields: name: args0 type: xsd:string Press Enter to accept the values.
Oracle SOA Suite 11g: Essential Concepts A - 24
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 4-1: Modifying an XSD Document (continued)
4) Save the response.xsd schema. 5) Validate the XSD schema. a) In the Application Navigator pane, right-click response.xsd and select the Validate XML option from the shortcut menu.
b) In the Messages-Log pane, verify that the schema has neither errors nor warnings.
Oracle SOA Suite 11g: Essential Concepts A - 25
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 4-1: Modifying an XSD Document (continued)
In this practice, you modify a WSDL document by using Oracle JDeveloper 11g. 1) Double-click WSDLDocument.wsdl to open it in the WSDL editor pane. 2) Modify and add the following components in the WSDL document. a) Add an XSD schema: i) In the WSDL editor pane, click the Schema tab (which is at the bottom of the pane).
ii) Select Schema Components in the Component palette drop-down list.
iii) Click and drag an import component from the Component palette to the node in the WSDL editor pane.
iv) Select the import component, and in the Property Inspector pane, enter the following values for the respective fields: schemaLocation: response.xsd namespace: http://www.example.org Press Enter to accept the values.
Oracle SOA Suite 11g: Essential Concepts A - 26
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 4-2: Modifying a WSDL Document
b) Add a message: i) In the WSDL editor pane, click the Design tab (which is at the bottom of the pane).
ii) Click the small [+] icon ( editor pane.
) on the Messages box to expand it in the WSDL
Oracle SOA Suite 11g: Essential Concepts A - 27
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 4-2: Modifying a WSDL Document (continued)
iii) Click the
icon on the Messages box to add a message.
iv) In the Create Message dialog box, enter the Message Name as messageOutput and click OK.
v) Select WSDL in the Component palette drop-down list.
vi) Click and drag a part component from the Component palette to the messageOutput node in the WSDL editor pane.
vii) In the Create Part dialog box, enter the following values and click OK: Part Name: parameters Reference Type: element Reference value: tns:response
Oracle SOA Suite 11g: Essential Concepts A - 28
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 4-2: Modifying a WSDL Document (continued)
viii) Verify that the message node looks like the following screenshot:
c) Add an operation: i) In the Port Types box of the WSDL editor pane, click and drag an operation component from the Component palette to the ValidateCreditCardService node.
ii) In the Create Operation dialog box, enter the following values and click OK: Operation Name: ValidateCreditCard Operation Type: Request Response Input: ns:messageInput Output: ns:messageOutput
Oracle SOA Suite 11g: Essential Concepts A - 29
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 4-2: Modifying a WSDL Document (continued)
iii) Expand the ValidateCreditCard node and its subsequent nodes to view the structure.
d) Add a binding: icon on the Bindings/Partner Links Types box of the WSDL i) Click the editor pane.
ii) In the Create Binding dialog box, deselect the SOAP11 option and select the SOAP12 option.
Oracle SOA Suite 11g: Essential Concepts A - 30
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 4-2: Modifying a WSDL Document (continued)
iii) In the SOAP12 section, specify the following values for the respective fields and click OK. Binding Name: ValidateCreditCardServiceSOAP12Binding Message Encoding: Document/Literal
iv) Expand the ValidateCreditCardServiceSOAP12Binding node and its subsequent nodes to view the structure.
e) Add a service: i) Click the
icon on the Services box of the WSDL editor pane.
Oracle SOA Suite 11g: Essential Concepts A - 31
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 4-2: Modifying a WSDL Document (continued)
ii) In the Create Service dialog box, enter the service name as ValidateCreditCardService and click OK.
iii) Click and drag a port component from the Component palette to the ValidateCreditCardService node.
iv) In the New Port dialog box, specify the following values for the respective fields and click OK. Port Name: ValidateCreditCardServiceSoap12HttpPort Binding Name: ns:ValidateCreditCardServiceSOAP12Binding
Oracle SOA Suite 11g: Essential Concepts A - 32
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 4-2: Modifying a WSDL Document (continued)
v) Select SOAP 1.2 Binding in the Component palette drop-down list.
vi) Click and drag a soap12:address component from the Component palette to the ValidateCreditCardServiceSoap12HttpPort node in the WSDL editor pane.
vii) In the “Insert soap12:address” dialog box, enter the location as http://localhost:8001/contextroot/ValidateCreditCardServi ceImplService. Click OK.
3) Save the WSDL document. 4) Validate the WSDL document. a) In the Application Navigator pane, right-click WSDLDocument.wsdl and select the Validate WSDL option from the shortcut menu.
Oracle SOA Suite 11g: Essential Concepts A - 33
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 4-2: Modifying a WSDL Document (continued)
b) In the Messages – Log pane, verify that the WSDL document has neither errors nor warnings.
5) Close the Application_04 workspace and remove it from the JDeveloper IDE. a) From the Application menu, select Close Application. b) In the Confirm Close Application dialog box, select the first option (Close application and remove it from IDE) and click OK.
Oracle SOA Suite 11g: Essential Concepts A - 34
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 4-2: Modifying a WSDL Document (continued)
The goal of the practices in this lesson is to create the basic infrastructure on which you start the development of the POProcessingComposite SOA composite application. You use the Oracle JDeveloper 11g integrated development environment (IDE) to develop the SOA composite. In this practice set, you perform the following tasks (annotated in the following screenshot): 1. Deploy a prebuilt SOA composite to Oracle SOA Suite 11g. 2. Create an SOA composite application workspace. 3. Add a service interface to the SOA composite. 4. Add an external reference to the SOA composite.
Oracle SOA Suite 11g: Essential Concepts A - 35
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practices for Lesson 5
In this practice, you deploy the prebuilt CreditCardValidation (ValidationForCC) SOA Composite application to the Oracle SOA Suite 11g by using Oracle JDeveloper 11g. CreditCardValidation is a simple SOA composite application that contains a single synchronous BPEL process service component. The BPEL process verifies the credit card number that is sent as an input to the BPEL process by the exposed service interface. After performing the verification, the BPEL process responds with appropriate messages. 1) Open the CreditCardValidation.jws workspace in JDeveloper. a) From the File menu, select Open. b) In the Open dialog box, navigate to the D:\labs\Application_02\CreditCardValidation directory. Select CreditCardValidation.jws and click the Open button. 2) Deploy the CreditCardValidation SOA composite to Oracle SOA Suite 11g. Caution: You might encounter a deployment error (such as, HTTP error code returned [403]) while deploying applications from JDeveloper. In such case, disable the Proxy settings in JDeveloper, and restart JDeveloper. To disable the Proxy settings, navigate to Tools > Preferences > Web Browser and Proxy, and deselect the “Use HTTP Proxy Server” option. Restart JDeveloper after making the changes. a) In the Application Navigator menu of JDeveloper, right-click ValidationForCC (the SOA composite project) and select Deploy > ValidationForCC > to > MyApplicationServerConnection.
b) In the SOA Deployment Configuration dialog box, verify that the SOA server is selected (soa_server1). Accept the default composite revision ID and click OK.
Oracle SOA Suite 11g: Essential Concepts A - 36
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 5-1: Deploying a Prebuilt SOA Composite by Using Oracle JDeveloper 11g
c) In the Authorization Request dialog box, enter weblogic in the Username field and welcome1 in the Password field. Click OK.
d) View the Deployment – Log pane to verify that the deployment is successful.
3) Close the Application_02 workspace and remove it from the JDeveloper IDE. a) From the Application menu, select Close Application. b) In the Confirm Close Application dialog box, select the first option (Close application and remove it from IDE) and click OK.
Oracle SOA Suite 11g: Essential Concepts A - 37
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 5-1: Deploying a Prebuilt SOA Composite by Using Oracle JDeveloper 11g (continued)
In this practice, you create an application workspace and an SOA project by using Oracle JDeveloper 11g. 4) Create a new application workspace. a) From the File menu, select New.
b) In the New Gallery dialog box, select Applications in the Categories pane and Generic Application in the Items pane. Click OK.
c) In the Create Generic Application dialog box, enter the following information and click Finish. Application Name: Application_05 Directory: D:\labs\Application_05
Oracle SOA Suite 11g: Essential Concepts A - 38
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 5-2: Creating an SOA Composite Application Workspace
d) You see a default project in the Applications Navigator pane. Delete the default project by executing the following steps: i) Right-click the project and select Delete Project from the shortcut menu.
ii) In the Confirm Delete Project dialog box, select the “Remove project and delete all of its contents (including secure directories)” option (you can press “d” to select this option), and then click Yes.
iii) Click Yes in the Confirm Project Contents Delete dialog box.
Oracle SOA Suite 11g: Essential Concepts A - 39
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 5-2: Creating an SOA Composite Application Workspace (continued)
5) Create an SOA project. a) From the Application menu, select New Project.
b) In the New Gallery dialog box, select SOA Project in the Items pane. Click OK.
c) In the “Create SOA Project – Step 1 of 2” dialog box, enter the following information and click Next. Project Name: POProcessingComposite Directory: D:\labs\Application_05\POProcessingComposite
Oracle SOA Suite 11g: Essential Concepts A - 40
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 5-2: Creating an SOA Composite Application Workspace (continued)
Also verify that SOA is added to the Selected list box.
d) In the “Create SOA Project – Step 2 of 2” dialog box, select the Empty Composite option in the Composite Template list box and click Finish.
Oracle SOA Suite 11g: Essential Concepts A - 41
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 5-2: Creating an SOA Composite Application Workspace (continued)
e) The new, empty SOA composite should look like the following screenshot:
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 5-2: Creating an SOA Composite Application Workspace (continued)
Oracle SOA Suite 11g: Essential Concepts A - 42
In this practice, you add and configure a service interface to the POProcessingComposite SOA composite. This service interface enables any client application to interact with the SOA composite. 1) Ensure that the SOA option is selected in the Component palette drop-down list. 2) Click and drag a Web Service component from the Component palette to the Exposed Services column in the SOA Composite editor pane.
3) Configure the service interface. Use the following details to accomplish this task: Step Screen/Page Description a. Create Web Service
Choices or Values
b.
Create WSDL
Click the “browse for schema files” icon (next to the URL text field).
c.
Type Chooser Click the Import Schema File icon.
d.
Import Schema File
Click the Browse Resources icon.
e.
SOA Resource Browser
Navigate to and select D:\labs\Application_Files\
Import Schema File
Click OK.
f.
Name: receivePO Type: Service WSDL URL: Click the “Generate WSDL from schema(s)” icon.
schemas\PurchaseOrder.xsd.
Click OK.
Oracle SOA Suite 11g: Essential Concepts A - 43
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 5-3: Adding a Service Interface to the SOA Composite
g. h.
Localize Files Click OK. Type Chooser Expand Project Schema Files > PurchaseOrder.xsd, and select PurchaseOrder. Click OK. Note: This service is a one-way invocation type, also known as a fire-and-forget service. So there is no need to specify a reply or callback.
i.
Create WSDL Create Web Service
j.
Click OK. Click OK.
a)
b)
Oracle SOA Suite 11g: Essential Concepts A - 44
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 5-3: Adding a Service Interface to the SOA Composite (continued)
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
d)
e)
Oracle University and In Motion Servicios S.A. use only
Practice 5-3: Adding a Service Interface to the SOA Composite (continued) c)
Oracle SOA Suite 11g: Essential Concepts A - 45
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
g)
h)
Oracle University and In Motion Servicios S.A. use only
Practice 5-3: Adding a Service Interface to the SOA Composite (continued) f)
Oracle SOA Suite 11g: Essential Concepts A - 46
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
j)
Oracle University and In Motion Servicios S.A. use only
Practice 5-3: Adding a Service Interface to the SOA Composite (continued) i)
Oracle SOA Suite 11g: Essential Concepts A - 47
In this practice, you add and configure an external Web service reference to the SOA composite. 1) Add a Web service reference to the SOA composite. a) Ensure that the SOA option is selected in the Component palette drop-down list. b) Click and drag a Web Service component from the Component palette to the External References column in the SOA Composite editor pane.
2) Configure the Web service reference. Use the following details to accomplish this task: Step Screen/Page Choices or Values Description a. Create Web Name: getCreditCardStatus Service Type: Reference WSDL URL: Click the “Find existing WSDLs” icon. b. SOA Select Resource Palette from the list. Resource Browser c. SOA Expand Application Server > MyApplicationServerConnection > Resource SOA > ValidateForCC [1.0], and select Browser creditcardstatus_ep. Click OK. d. Create Web Click OK. Service
Oracle SOA Suite 11g: Essential Concepts A - 48
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 5-4: Adding an External Reference to the SOA Composite
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
b)
c)
Oracle University and In Motion Servicios S.A. use only
Practice 5-4: Adding an External Reference to the SOA Composite (continued)
a)
Oracle SOA Suite 11g: Essential Concepts A - 49
d)
3) Close the Application_05.jws workspace and remove it from the JDeveloper IDE.
Oracle SOA Suite 11g: Essential Concepts A - 50
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 5-4: Adding an External Reference to the SOA Composite (continued)
The goal of the practices in this lesson is to make yourself familiar with the Oracle Enterprise Manager 11g Fusion Middleware Control console with respect to managing and testing the SOA composites application deployed to the Oracle SOA Suite 11g. In this practice set, you perform the following tasks: 1. Test the CreditCardValidation SOA composite that you deployed in the previous practice set by using the Oracle Enterprise Manager 11g Fusion Middleware Control console. 2. View the SOA composite’s instance details, the message flow, and the audit trail of the SOA composite.
Oracle SOA Suite 11g: Essential Concepts A - 51
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practices for Lesson 6
In this practice, you test the CreditCardValidation SOA composite, deployed to the Oracle SOA Suite 11g instance, by using the Oracle Enterprise Manager 11g Fusion Middleware Control console. 1) Test the CreditCardValidation (ValidationForCC) SOA composite with a set of input parameters. a) Log in to the Oracle Enterprise Manager 11g Fusion Middleware Control console. i) Open a Web browser (Mozilla Firefox), and enter the following URL in the
address field: http://localhost:7001/em
ii) You see the login page of the Oracle Enterprise Manager 11g Fusion Middleware Control console. Enter the following credentials and click Login. User Name: weblogic Password: welcome1
iii) Click Continue.
Oracle SOA Suite 11g: Essential Concepts A - 52
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 6-1: Testing an SOA Composite by Using Oracle Enterprise Manager Fusion Middleware Control
b) Test the CreditCardValidation SOA composite. i) On the Oracle Enterprise Manager 11g Fusion Middleware Control page, you see two vertical panes. In the left pane, you see the domain and under it, a list of folders. Expand the SOA > soa-infra (soa_server1) folder. You see ValidationForCC [1.0].
ii) Click the ValidationForCC [1.0] link to see the application details in the right pane.
Oracle SOA Suite 11g: Essential Concepts A - 53
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 6-1: Testing an SOA Composite by Using Oracle Enterprise Manager Fusion Middleware Control (continued)
iii) Click the Test button on the ValidationForCC [1.0] page.
iv) On the Test Web Service page, scroll down to the Input Arguments section. Enter the test value in the input parameter as 1234-1234-1234-1234. v) Click the Test Web Service button.
Oracle SOA Suite 11g: Essential Concepts A - 54
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 6-1: Testing an SOA Composite by Using Oracle Enterprise Manager Fusion Middleware Control (continued)
2) Verify the result of testing the CreditCardValidation SOA composite. i) On the Test Web Service page, under the Response tab, verify that the Test Status is Passed. ii) Verify that the result field shows the VALID value (credit card status).
3) Execute the test case again with a different credit card number (1234-1234-12340000), and verify that the result field shows the INVALID credit card status.
Oracle SOA Suite 11g: Essential Concepts A - 55
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 6-1: Testing an SOA Composite by Using Oracle Enterprise Manager Fusion Middleware Control (continued)
In this practice, you view the CreditCardValidation SOA composite instance details and the composite’s flow of message through various composite and component instances. 1) View the CreditCardValidation SOA composite’s instance. a) Click the ValidationForCC [1.0] link in the left pane of the browser dialog box. b) Click the Instances tab on the ValidationForCC [1.0] page. You see the SOA composite’s instance.
2) View the Flow trace of the SOA composite. a) Click the Instance ID to see the flow trace of the composite. b) On the Flow Trace page, under the Trace section, verify that the State column shows completed for the service, component, and reference.
Oracle SOA Suite 11g: Essential Concepts A - 56
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 6-2: Viewing the SOA Composite Instance Details
3) View the instance information of the BPEL Process service component. a) On the Flow Trace page, under the Trace section, click the CreditCardValidationProcess link.
b) On the “Instance of CreditCardValidationProcess” page, you see the audit trail.
c) Click the Flow tab to view the BPEL flow. Click a BPEL activity to view the details.
Oracle SOA Suite 11g: Essential Concepts A - 57
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 6-2: Viewing the SOA Composite Instance Details (continued)
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 6-2: Viewing the SOA Composite Instance Details (continued)
Oracle SOA Suite 11g: Essential Concepts A - 58
The goal of the practices in this lesson is to create the routePO Mediator service component. The client that interacts with the SOA composite makes a new purchase order request to the POProcessingComposite by using the receivePO Web service interface. The routePO Mediator routes the order request to a text file (order_n.txt) by using the WriteApprovalResults File adapter. Often, you have an application or some GUI-based front end to invoke and test a service; however, usually, when you start developing your services, you do not have any client application to test them. The Oracle Enterprise Manager 11g Fusion Middleware Control console allows you to run your service with any input, so you can test it at any time. In this practice set, you perform the following tasks: 1. Create a Mediator service component to route the purchase order to a text file. 2. Add routing rules and map the order request to the text file. 3. Deploy and test the SOA composite in Oracle SOA Suite 11g.
Oracle SOA Suite 11g: Essential Concepts A - 59
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practices for Lesson 7
In this practice, you add a Mediator component in the POProcessingComposite SOA composite to accept and route new purchase orders to a disk file. 1) Open the Application_07.jws workspace in JDeveloper. a) From the File menu, select Open. b) In the Open dialog box, navigate to the D:\labs\Application_07 directory. Select Application_07.jws and click the Open button. c) In the Application Navigator pane, expand POProcessingComposite > SOA Content and double-click composite.xml to open it in the SOA Composite editor pane.
2) Add a Mediator component to the POProcessingComposite. a) Ensure that SOA is selected in the Component palette drop-down list. b) Click and drag a Mediator component from the Component palette to the Components column in the SOA Composite editor pane.
c) In the Create Mediator dialog box, specify the following options and click OK. Name: routePO Template: Define Interface Later
Oracle SOA Suite 11g: Essential Concepts A - 60
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 7-1: Creating a Mediator to Route Order Request
3) Add a File adapter to the composite to write new purchase order data in a text file. a) Drag a File Adapter component from the Component palette to the External References column in the SOA Composite editor pane.
b) Create a File Adapter called WriteApprovalResults. Use the following details to accomplish this task: Step Screen/Page Choices or Values Description a. Welcome Click Next. b. Service Name Service Name: WriteApprovalResults Click Next. c. Adapter Accept the default option. Interface Click Next. d. Operation Operation Type: Write File Operation Name: Write Click Next. e. File Directory for Outgoing Files (physical path): Configuration D:\labs\Application_Files\testResults File Naming Convention: order_%SEQ%.txt Click Next.
Oracle SOA Suite 11g: Essential Concepts A - 61
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 7-1: Creating a Mediator to Route Order Request (continued)
f.
Messages
URL: Click the “Browse from schema file” icon.
g.
Type Chooser Click the Import Schema File icon.
h.
Import Schema File
Click the Browse Resources icon.
i.
SOA Resource Browser
Navigate to D:\labs\Application_Files\ schemas and select Order.xsd.
j.
Import Schema File
Click OK.
k. l.
Localize Files Click OK. Type Chooser Expand Project Schema Files > Order.xsd. Select Order. Click OK.
m.
Messages
Click Next.
n.
Finish
Click Finish.
Click OK.
b)
Oracle SOA Suite 11g: Essential Concepts A - 62
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 7-1: Creating a Mediator to Route Order Request (continued)
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
d)
e)
Oracle University and In Motion Servicios S.A. use only
Practice 7-1: Creating a Mediator to Route Order Request (continued) c)
Oracle SOA Suite 11g: Essential Concepts A - 63
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
g)
h)
i)
Oracle University and In Motion Servicios S.A. use only
Practice 7-1: Creating a Mediator to Route Order Request (continued) f)
Oracle SOA Suite 11g: Essential Concepts A - 64
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
k)
l)
Oracle University and In Motion Servicios S.A. use only
Practice 7-1: Creating a Mediator to Route Order Request (continued) j)
Oracle SOA Suite 11g: Essential Concepts A - 65
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
4) Wire the components as shown in the following screenshot:
Oracle SOA Suite 11g: Essential Concepts A - 66
Oracle University and In Motion Servicios S.A. use only
Practice 7-1: Creating a Mediator to Route Order Request (continued) m)
In this practice, you create the mapping between the inbound purchase order and the order format that you log to the order_n.txt text file. 1) Create a mapping between the service interface and the file adapter. a) In the SOA Composite editor, double-click the Mediator component to open the Mediator editor pane.
b) In the Mediator editor pane, under the Routing Rules section, click the “Select an existing mapper file or create a new one” icon (for the WriteApprovalResults::Write target service operation).
c) In the Request Transformation Map dialog box, select the “Create New Mapper File” option. Enter receiveOrder_To_writeOrder.xsl in the “Create New Mapper File” text field, and click OK.
Oracle SOA Suite 11g: Essential Concepts A - 67
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 7-2: Adding Routing Rules to the SOA Composite
d) In the XSLT Mapper pane, drag Purchase Order from the sources side to Order on the target side. You will be prompted for auto-mapping preferences.
e) In the Auto Map Preferences dialog box, perform the following steps: i) Deselect the “Match Elements Considering their Ancestor Names” check box and click Show Dictionaries.
ii) Click the Add button.
Oracle SOA Suite 11g: Essential Concepts A - 68
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 7-2: Adding Routing Rules to the SOA Composite (continued)
iii) Select D:\labs\Application_Files\dictionary\ po_to_order_dictionary.xml and click OK.
Note: You use a dictionary created by business analysts that lists common synonyms in use across data objects (such as “qty” being used instead of “quantity,” and “custID” instead of “customerID”). The dictionary is not mandatory, and even without it, the auto-mapping feature identifies and enables mapping of these fields. However, a dictionary, customized to a specific company helps improve its accuracy. f) Verify that the resultant mapping looks like the following screenshot:
Oracle SOA Suite 11g: Essential Concepts A - 69
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 7-2: Adding Routing Rules to the SOA Composite (continued)
g) Save and close both the mapping and the Mediator editor to return to the composite.
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 7-2: Adding Routing Rules to the SOA Composite (continued)
Oracle SOA Suite 11g: Essential Concepts A - 70
In this practice, you deploy the POProcessingComposite SOA Composite application to the application server. You also test the SOA Composite by using the Oracle Enterprise Manager 11g Fusion Middleware Control console. 1) Deploy the POProcessingComposite SOA composite to Oracle SOA Suite 11g. a) In the Application Navigator of JDeveloper, right-click POProcessingComposite (the SOA project) and select Deploy > POProcessingComposite > to > MyApplicationServerConnection option.
b) In the SOA Deployment Configuration dialog box, click OK. Note: If you are redeploying your application with the same revision number, you must select the option to overwrite the previous version or enter a new version (revision ID). Otherwise the deployment will fail.
c) View the Deployment – Log pane to verify that the deployment was successful. 2) Test the POProcessingComposite SOA composite with a set of predefined input parameters.
Oracle SOA Suite 11g: Essential Concepts A - 71
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 7-3: Deploying and Testing the SOA Composite
a) Log in to the Oracle Enterprise Manager 11g Fusion Middleware Control console. b) Test the POProcessingComposite SOA composite. i) On the Oracle Enterprise Manager 11g Fusion Middleware Control page, you see two vertical panes. In the left pane, you see the domain and, under it, a list of folders. Expand the SOA > soa-infra (soa_server1) folder. You see POProcessingComposite. ii) Click the POProcessingComposite link to see the application details in the right pane. iii) Click the Test button on the POProcessingComposite page.
iv) In the Test Web Service page, scroll down to the Input Arguments section and select XML View from the drop-down list. Delete the existing XML code in the text area in the XML view.
Oracle SOA Suite 11g: Essential Concepts A - 72
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 7-3: Deploying and Testing the SOA Composite (continued)
v) Use any text editor to open the po-small-Headset.txt text file at D:\labs\Application_Files\test directory (a link is created on the desktop with the name, Test) and copy the XML code.
vi) On the Test Web Service page, paste the XML code in the text area of the XML view.
vii) Click the Test Web Service button. c) Verify the result of testing the POProcessingComposite SOA composite. Oracle SOA Suite 11g: Essential Concepts A - 73
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 7-3: Deploying and Testing the SOA Composite (continued)
i) In the Test Web Service page, on the Response tabbed subpage, verify that the Test Status is Passed. Note: The Test Web Service page does not show any response because this is a one-way invocation with no reply or callback.
ii) Click the POProcessingComposite link in the left pane of the browser dialog box. You see that an instance has been added under the Recent Instances section. iii) Click the Instance ID to see the flow trace of the composite.
iv) In the Flow Trace page, under the Trace section, verify that the State column shows Completed for the service, component, and reference.
Oracle SOA Suite 11g: Essential Concepts A - 74
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 7-3: Deploying and Testing the SOA Composite (continued)
v) You can also verify the result by opening the text file that has been created by the File adapter service at the D:\labs\Application_Files\testResults directory (a link is created on the desktop with the name, Test Results) with a text editor. Notice how field names have been translated by the mapping and are different from the input.
3) Close the text file and the Web browser window. 4) Close the Application_07.jws workspace and remove it from the JDeveloper IDE.
Oracle SOA Suite 11g: Essential Concepts A - 75
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 7-3: Deploying and Testing the SOA Composite (continued)
The goal of the practices in this lesson is to add and create the approveLargeOrder BPEL process in the POProcessingComposite. The BPEL process validates the client’s credit card number by invoking an external Web service (CreditCardValidationService). Based on the credit card validation status (valid or invalid), the BPEL process assigns the appropriate message to the order data, and sends it to the File adapter (through the routePO Mediator component) to log the order data. The routePO Mediator component also performs the content-based routing of the order request. If the order quantity is less than 10 units, the Mediator directly routes the request to the File adapter. However, if the order quantity is more than or equal to 10 units, the Mediator routes the order request to the approveLargeOrder BPEL process. In this practice set, you perform the following tasks: 1. Create an order approval BPEL process in the POProcessingComposite to process large orders. 2. Modify the routePO Mediator component in the POProcessingComposite to enable content-based routing of the order request. 3. Deploy and test the SOA composite in Oracle SOA Suite 11g.
Oracle SOA Suite 11g: Essential Concepts A - 76
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practices for Lesson 8
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
BPEL Process
Oracle SOA Suite 11g: Essential Concepts A - 77
Oracle University and In Motion Servicios S.A. use only
The following diagram illustrates the tasks to be performed in this practice set.
In this practice, you create the approveLargeOrder BPEL process that initially verifies the credit card of the client and then, based on the credit card status, approves or disapproves the order. 1) Open the Application_08.jws workspace in JDeveloper. a) From the File menu, select Open. b) In the Open dialog box, navigate to the D:\labs\Application_08 directory. Select Application_08.jws and click the Open button. c) In the Application Navigator pane, expand the POProcessingComposite > SOA Content folder and double-click composite.xml to open it in the SOA Composite editor pane.
2) Add a BPEL component to the POProcessingComposite. a) Ensure that the SOA option is selected in the Component palette drop-down list. b) Click and drag a BPEL Process component from the Component palette to the Components column in the SOA Composite editor pane.
Oracle SOA Suite 11g: Essential Concepts A - 78
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 8-1: Creating an Order Approval BPEL Process
c) In the Create BPEL Process dialog box, specify the following options and click OK. Name: approveLargeOrder Template: Asynchronous BPEL Process Service Name: approvelargeorder_client Expose as a SOAP Service: Deselect the option Input: Click the flashlight icon, and in the Type chooser dialog box, expand Project Schema Files > Order.xsd and select Order. Output: Click the flashlight icon, and in the Type chooser dialog box, expand Project Schema Files > Order.xsd and select Order.
3) Wire the approveLargeOrder BPEL process and the getCreditCardStatus service in the SOA Composite editor, as shown in the following screenshot.
Oracle SOA Suite 11g: Essential Concepts A - 79
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 8-1: Creating an Order Approval BPEL Process (continued)
4) Design the approveLargeOrder BPEL approval process. a) Double-click the approveLargeOrder BPEL component in the SOA Composite editor to open the BPEL editor.
Note: Notice that the getCreditCardStatus partner link is already in the Partner Links swim lane because you wired it in the composite. b) Ensure that the “BPEL Activities and Components” option is selected in the Component palette. c) Add an Invoke activity to invoke the getCreditCardStatus partner link. i) Drag an Invoke activity from the Component palette to the BPEL editor within the workflow lane. Add the Invoke activity to an insertion point under the receiveInput activity.
Oracle SOA Suite 11g: Essential Concepts A - 80
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 8-1: Creating an Order Approval BPEL Process (continued)
ii) Drag the wire from the Invoke activity to the getCreditCardStatus. Note: This tells your BPEL process to invoke that service.
iii) In the Edit Invoke dialog box, specify the following and click OK. Name: invokeCCStatusService Input Variable: Click the green [+] icon, and click OK to create a new global variable, accepting the default name and type. Note: This variable contains the data that will be sent to the service, or the input to the service. Output Variable: Click the green [+] icon, and click OK to create a new global variable, accepting the default name and type. Note: This variable contains the data that will be returned by the service, or the output of the service.
Oracle SOA Suite 11g: Essential Concepts A - 81
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 8-1: Creating an Order Approval BPEL Process (continued)
d) Add an Assign activity to assign data to a variable. Note: You created the variables that are used when interacting with the getCreditCardStatus service, but they have not been populated. The output variable will automatically be populated when the service returns a result, but you need to populate the input variable that is going to be passed to the service. In this case you assign the credit card number that is passed into the POProcessing service to the getCreditCardStatus service. i) Drag an Assign activity (from the Component palette) above the invokeCCStatusService Invoke activity in the BPEL editor.
Oracle SOA Suite 11g: Essential Concepts A - 82
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 8-1: Creating an Order Approval BPEL Process (continued)
ii) Double-click the Assign activity to edit it. iii) Click the General tab and change the name to assignCCNumber.
iv) Click the Copy Operation tab. v) Click the green [+] icon and select Copy Operation to open the Create Copy Operation dialog box, and specify the following details:
Oracle SOA Suite 11g: Essential Concepts A - 83
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 8-1: Creating an Order Approval BPEL Process (continued)
From: Select Variables > Process > Variables > inputVariable > payload > Order > creditCardInfo > cardNumber To: Select Variables > Process > Variables > invokeCCStatusService_execute_InputVariable > payload > process > input
vi) Click OK. vii) Add a second copy operation. Click the green [+] icon, select Copy Operation, and specify the following details: From: Select Variables > Process > Variables > inputVariable > payload > Order To: Select Variables > Process > Variables > outputVariable > payload > Order Click OK.
Oracle SOA Suite 11g: Essential Concepts A - 84
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 8-1: Creating an Order Approval BPEL Process (continued)
Note: The second operation enables the BPEL process to return the input data, as well as some updates, which will be made later in the BPEL process. viii) The Assign dialog box looks like the following screenshot:
Click OK to return to the BPEL process. Oracle SOA Suite 11g: Essential Concepts A - 85
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 8-1: Creating an Order Approval BPEL Process (continued)
ix) Click the green check button in the upper left of the BPEL process to validate the process. The BPEL process looks like the following screenshot:
e) Add a Switch activity to process the data returned from the getCreditCardStatus service. i) Drag a Switch activity below the invokeCCStatusService Invoke activity.
Oracle SOA Suite 11g: Essential Concepts A - 86
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 8-1: Creating an Order Approval BPEL Process (continued)
ii) Double-click the Switch activity’s name (which is probably something like Switch_1) just below the icon and rename it EvaluateCCStatus. Note: You can also double-click the Switch icon and change the name in the subsequent dialog box, but if you double-click the text itself you can change the activity name.
iii) Click the small [+] icon on the Switch activity to expand it.
Oracle SOA Suite 11g: Essential Concepts A - 87
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 8-1: Creating an Order Approval BPEL Process (continued)
f) Add a condition in the Switch activity to compare the data returned from the getCreditCardStatus service with a string value. i) Click the View Condition Expression button.
ii) Click the XPath Expression Builder button.
iii) In the Expression Builder dialog box, expand Variables > Process > Variables > invokeCCStatusService_execute_OutputVariable > payload > processResponse, and select “result” (in the BPEL Variables field). iv) Click the Insert Into Expression button (the wide button under the Expression field). Oracle SOA Suite 11g: Essential Concepts A - 88
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 8-1: Creating an Order Approval BPEL Process (continued)
v) In the Expression field, put the cursor at the end and add: ='VALID'
vi) Click OK.
Oracle SOA Suite 11g: Essential Concepts A - 89
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 8-1: Creating an Order Approval BPEL Process (continued)
vii) Click outside the Condition Expression pop-up window to close it. g) Add an Assign activity in the part of the Switch activity. Note: If the condition is true, then BPEL executes any activities in the part of the switch. If not, any activities in the section are executed. i) Drag an Assign activity (from the Component palette) into the section of the Switch activity.
ii) Double-click the Assign activity to edit it. iii) Click the General tab and change the name to assignApproval. iv) Click the Copy Operation tab. v) Click the green [+] icon and select Copy Operation to open the Create Copy Operation dialog box, and specify the following details: (1) In the From section: Change the Type list to Expression, and in the Expression field, enter 'approved'. (2) In the To section: Select Variables > Process > Variables > outputVariable > payload > Order > status.
Oracle SOA Suite 11g: Essential Concepts A - 90
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 8-1: Creating an Order Approval BPEL Process (continued)
vi) Click OK. vii) Click OK to return to the BPEL process. h) Add an Assign activity in the part of the switch activity. i) Drag an Assign activity (from the Component palette) into the section of the Switch activity. ii) Double-click the Assign activity to edit it. iii) Click the General tab and change the name to assignInvalidCC. iv) Click the Copy Operation tab. v) Click the green [+] icon and select Copy Operation to open the Create Copy Operation dialog box, and specify the following details: (1) In the From section: Change the Type list to Expression, and in the Expression field, enter 'invalidCreditCard'. (2) In the To section: Select Variables > Process > Variables > outputVariable > payload > Order > status.
Oracle SOA Suite 11g: Essential Concepts A - 91
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 8-1: Creating an Order Approval BPEL Process (continued)
vi) Click OK. vii) Click OK to return to the BPEL process. i) At the top of BPEL designer, click the green check mark to validate the BPEL process. Any yellow flags should disappear and you should not see any warning messages. j) Save the BPEL process and close the BPEL editor dialog box to return to the composite.
Oracle SOA Suite 11g: Essential Concepts A - 92
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 8-1: Creating an Order Approval BPEL Process (continued)
In this practice, you modify the routePO mediator component to route requests to both the WriteApprovalResults service and the approveLargeOrder BPEL process. Moreover, you also add a content-based routing rule to the mediator component specifying that order quantity under 10 units should be automatically approved while order quantity greater than or equal to 10 units needs to go through an approval process. 1) Wire the routePO Mediator to the approveLargeOrder BPEL process in the SOA Composite editor.
2) Double-click the routePO Mediator component in the SOA Composite editor to open the Mediator editor. 3) Add the condition specifying that order quantity under 10 units should be automatically approved. a) In the Mediator editor pane, under the Routing Rules section, click the Invoke Expression Builder icon (the filter icon) for the WriteApprovalResults::Write target service operation.
Oracle SOA Suite 11g: Essential Concepts A - 93
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 8-2: Modifying the Mediator in the SOA Composite
b) In the Expression Builder dialog box, build the following expression: ($in.request/inp1:PurchaseOrder/inp1:quantity) < 10
Caution: Do not copy-paste this text into the expression, but use the Variables frame to select the variables. The namespaces (such as, inp1:) may be different for you. Hint: Expand the nodes in the Variables section to find the field that you want and click the Insert Into Expression button to add them.
Oracle SOA Suite 11g: Essential Concepts A - 94
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 8-2: Modifying the Mediator in the SOA Composite (continued)
c) Click OK. 4) Add the condition specifying that an order quantity more than or equal to 10 units needs to go through an approval process. a) In the Mediator editor pane, under the Routing Rules section, click the Invoke Expression Builder icon (the filter icon) for the approvelargeorder/client::process target service operation. b) In the Expression Builder dialog box, build the following expression: ($in.request/inp1:PurchaseOrder/inp1:quantity) >= 10
Caution: Do not copy-paste this text into the expression, but use the Variables frame to select the variables. The namespaces (such as, inp1:) may be different for you. Hint: Expand the nodes in the Variables section to find the field that you want and click the Insert Into Expression button to add them. c) Click OK. 5) Set the callback of the asynchronous BPEL process to call the file adapter service. a) In the Mediator editor pane, click the cog icon (the “Browse for target service” icon) next to the field in the Callback section.
b) In the Target Type dialog box, click the Service button. c) In the Target Services dialog box, select POProcessing > References > WriteApprovalResults > Write.
Oracle SOA Suite 11g: Essential Concepts A - 95
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 8-2: Modifying the Mediator in the SOA Composite (continued)
d) Click OK. 6) Add a transformation for routing data from the service interface to the BPEL process. a) In the Mediator editor pane, click the “Select an existing mapper file or create a new one” icon (for the approvelargeorder/client::process target service operation).
Oracle SOA Suite 11g: Essential Concepts A - 96
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 8-2: Modifying the Mediator in the SOA Composite (continued)
b) In the Request Transformation Map dialog box, select the Create New Mapper File option. Enter receiveOrder_To_approveOrder.xsl in the respective text field, and click OK. c) In the XSLT Mapper pane, drag PurchaseOrder from the source side to Order on the target side. You will be prompted for auto-mapping preferences. d) In the Auto Map Preferences dialog box, click OK (since you already added the dictionary earlier). e) The resulting transformation looks like the following:
Save and close the mapper to return to the Mediator editor. Note: Select Save All from the File menu or from the toolbar, to make sure that everything is saved. 7) Add a transformation for routing data from the BPEL process to the file adapter service. a) In the Mediator editor pane, under the Callback section, click the “Select an existing mapper file or create a new one” icon (for the WriteApprovalResults::Write target service operation). b) In the Request Transformation Map dialog box, select the Create New Mapper File option. Enter approveOrder_To_writeOrder.xsl in the respective text field, and click OK. c) In the XSLT Mapper pane, drag Order from the source side to Order on the target side. You will be prompted for auto-mapping preferences. d) In the Auto Map Preferences dialog box, click OK (since you already added the dictionary earlier). e) The resulting transformation looks like the following screenshot:
Oracle SOA Suite 11g: Essential Concepts A - 97
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 8-2: Modifying the Mediator in the SOA Composite (continued)
Save and close the mapper to return to the Mediator editor. 8) Save and close the Mediator editor to return to the composite. Note: Select Save All from the File menu or from the toolbar, to make sure that everything is saved.
Oracle SOA Suite 11g: Essential Concepts A - 98
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 8-2: Modifying the Mediator in the SOA Composite (continued)
In this practice, you deploy the POProcessingComposite SOA composite application to the application server. You also test the SOA composite by using the Oracle Enterprise Manager 11g Fusion Middleware Control console. In the Mediator practice set, you submitted a small order, which created an order file directly. This time you create a large order, which the Mediator will route to the approveLargeOrder BPEL process. 1) Deploy the POProcessingComposite SOA composite to Oracle SOA Suite 11g. a) In the Application Navigator menu of JDeveloper, right-click POProcessingComposite (the SOA project) and select Deploy > POProcessingComposite > to > MyApplicationServerConnection. b) In the SOA Deployment Configuration dialog box, select the “Overwrite any existing composites with the same revision ID” option and click OK.
Note: If you are redeploying your application with the same revision number, you must select the option to overwrite the previous version or enter a new version (revision ID). Otherwise the deployment will fail. c) View the Deployment – Log pane to verify that the deployment was successful. 2) Test the POProcessingComposite SOA composite with a set of predefined input parameters. a) Log in to the Oracle Enterprise Manager 11g Fusion Middleware Control console. b) Test the POProcessingComposite SOA composite.
Oracle SOA Suite 11g: Essential Concepts A - 99
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 8-3: Deploying and Testing the SOA Composite
i) On the Oracle Enterprise Manager 11g Fusion Middleware Control page, you see two vertical panes. In the left pane, you see the domain and under it a list of folders. Expand the SOA > soa-infra (soa_server1) folder. You see POProcessingComposite. ii) Click the POProcessingComposite link to see the application details in the right pane. iii) Click the Test button on the POProcessingComposite page. iv) In the Test Web Service page, scroll down to the Input Arguments section and select XML View from the drop-down list. Delete the existing XML code in the text area in the XML view. v) Open the text file (po-large-iPod.txt) at D:\labs\Application_Files\test by using any text editor (such as notepad), and copy the XML code.
vi) On the Test Web Service page, paste the XML code in the text area of the XML view. vii) Click the Test Web Service button. c) Verify the result of testing the POProcessingComposite SOA composite. i) On the Test Web Service page, under the Response tab, verify that the Test Status is Passed. Note: The Test Web Service page does not show any response because this is a one-way invocation with no reply or callback.
Oracle SOA Suite 11g: Essential Concepts A - 100
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 8-3: Deploying and Testing the SOA Composite (continued)
ii) Click the POProcessingComposite link in the left pane of the browser dialog box. You see that an instance has been added under the Recent Instances section. iii) Click the Instance ID to see the flow trace of the composite. iv) In the Flow Trace page, under the Trace section, verify that the State column shows completed for the service, component, and reference.
v) You can also verify the result by opening the new text file (order_n.txt) that has been created by the File adapter service at the D:\labs\Application_Files\testResults directory with a text editor.
3) Retest the SOA Composite using the same input data, but this time, change the credit card number to 4321-4321-4321-4321, which represents an invalid credit card. 4) Observe the order status in the new text file that has been created by the File adapter service at the D:\labs\Application_Files\testResults directory. The invalidCreditCard status is the result of the statement in the approveLargeOrder BPEL process.
Oracle SOA Suite 11g: Essential Concepts A - 101
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 8-3: Deploying and Testing the SOA Composite (continued)
5) Close the Web browser window. 6) Close the Application_08.jws workspace and remove it from the JDeveloper IDE.
Oracle SOA Suite 11g: Essential Concepts A - 102
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 8-3: Deploying and Testing the SOA Composite (continued)
The goal of the practices in this lesson is to add and configure a Human Task component in the POProcessingComposite SOA composite. The ManualPOApproval Human Task is accessed by the approveLargeOrder BPEL process for manually approving large orders that have a valid credit card status. When the Human Task is added to the branch of the EvaluateCCStatus Switch activity, a taskSwitch activity is also added at the same time as the Human Task. The taskSwitch is configured with an branch and a branch for each outcome configured in the Human Task. In this practice, you add activities for each branch in the taskSwitch. In addition, by using JDeveloper you generate a simple task form to display purchase order information in the Worklist application for the assignee approving the order. In this practice set, you perform the following tasks: 1. Create a Human Task in the POProcessingComposite to manually approve large orders. 2. Access and configure the Human Task in the approveLargeOrder BPEL process. 3. Deploy and test the SOA composite in Oracle SOA Suite 11g.
Oracle SOA Suite 11g: Essential Concepts A - 103
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practices for Lesson 9
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
BPEL Process
Oracle University and In Motion Servicios S.A. use only
The following diagram illustrates the tasks to perform in this practice set.
Oracle SOA Suite 11g: Essential Concepts A - 104
In this practice, you create and configure the ManualPOApproval Human Task component in the POProcessingComposite SOA composite. 1) Open the Application_09.jws workspace in JDeveloper. a) From the File menu, select Open. b) In the Open dialog box, navigate to the D:\labs\Application_09 directory. Select Application_09.jws and click the Open button. c) In the Application Navigator pane, expand the POProcessingComposite > SOA Content folder and double-click composite.xml to open it in the SOA Composite editor pane.
2) Add a Human Task component to the POProcessingComposite. a) Ensure that the SOA option is selected in the Component palette drop-down list. b) Click and drag a Human Task component from the Component palette to the Components column in the SOA Composite editor pane.
Oracle SOA Suite 11g: Essential Concepts A - 105
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 9-1: Creating a Human Task for Manual Order Approval
c) In the Create Human Task dialog box, specify the following options and click OK. Name: ManualPOApproval Namespace: Leave as default
3) Wire the approveLargeOrder BPEL process to the ManualPOApproval Human Task component.
4) Create the task definitions for the ManualPOApproval Human Task component. a) Double-click the ManualPOApproval Human Task component in the SOA Composite editor to open the Task Definition editor. b) In the Task Definition editor, specify the following settings:
Oracle SOA Suite 11g: Essential Concepts A - 106
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 9-1: Creating a Human Task for Manual Order Approval (continued)
i) Title: Using the expression builder button on the right, enter ‘Approve Large Order’ and click OK. You see entered as the value. ii) Description: Manual approval task for large orders
c) Add a parameter to the task definition. i) In the Parameters section, click the green [+] sign to open the Add Task Parameter dialog box.
ii) Select the Element option. iii) Click the “Browse for complex types” icon for the Element option.
Oracle SOA Suite 11g: Essential Concepts A - 107
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 9-1: Creating a Human Task for Manual Order Approval (continued)
iv) In the Type Chooser dialog box, expand Project Schema Files > Order.xsd and select Order.
v) Click OK. vi) Select the “Editable via worklist” option. vii) Click OK in the Add Task Parameter dialog box.
d) Add a participant to the task definition. i) In the Assignment and Routing Policy section, double-click the box in the diagram.
Oracle SOA Suite 11g: Essential Concepts A - 108
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 9-1: Creating a Human Task for Manual Order Approval (continued)
ii) In the Add Participant Type dialog box, specify the following: Type: Single Label: Large Order Approver iii) In the Add Participant Type dialog box, click the green [+] sign next to Participant Names and select Add User.
iv) Accept the default values for the Identification Type and Data Type fields. Enter weblogic in the Value field. v) Click OK.
Oracle SOA Suite 11g: Essential Concepts A - 109
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 9-1: Creating a Human Task for Manual Order Approval (continued)
5) Save and close the Task Definition editor and return to the SOA Composite editor.
Oracle SOA Suite 11g: Essential Concepts A - 110
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 9-1: Creating a Human Task for Manual Order Approval (continued)
In this practice, you add and configure a Human Task activity in the approveLargeOrder BPEL process. In the Human Task activity, you select the ManualPOApproval Human Task component that you added to the POProcessingComposite SOA composite in the previous practice for implementing the task definitions. 1) In the SOA Composite editor, double-click the approveLargeOrder BPEL process to open the BPEL designer. 2) Add a Human Task activity into the branch of the EvaluateCCStatus Switch activity. a) Drag a Human Task activity from the Component palette into the branch of the EvaluateCCStatus Switch activity, below the assignApproval Assign activity.
b) In the Create Human Task dialog box, select ManualPOApproval from the Task Definition drop-down list.
Oracle SOA Suite 11g: Essential Concepts A - 111
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 9-2: Accessing the Human Task from the BPEL Process
c) In the Create Human Task dialog box, enter Approve Large Order in the Task title field. d) Click the ellipsis […] button to the right of the Order field (under Task Parameter) to select the BPEL variable that needs to be passed as the input parameter.
e) In the Task Parameters dialog box, ensure that the Type list contains the Variable option. Then select Variables > Process > Variables > outputVariable > payload > Order, and click OK.
Oracle SOA Suite 11g: Essential Concepts A - 112
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 9-2: Accessing the Human Task from the BPEL Process (continued)
Note: The outputVariable has all the information collected so far. f) Click OK to close the Create Human Task dialog box.
3) Add an Assign activity in the part of the taskSwitch Switch activity (if the request is approved). Ensure that you expand the Switch activity (by clicking the + icon) before adding the Assign activity. Note: Notice that there are two new activities in the BPEL process: a Human Task and a Switch activity (taskSwitch). The Human Task handles getting the approval (or rejection) from users using a Worklist application. The Switch activity is used to evaluate the results from the Human Task, such as the task being approved, rejected, withdrawn, or expired.
Oracle SOA Suite 11g: Essential Concepts A - 113
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 9-2: Accessing the Human Task from the BPEL Process (continued)
a) Drag the assignApproval Assign activity below the CopyPayloadFromTask Assign activity in the branch of the taskSwitch Switch activity.
Note: The approved case was already created earlier while constructing the approveLargeOrder BPEL process. Therefore, you can reuse that. 4) Specify the message in the part of the taskSwitch Switch activity (if the request is rejected). a) Double-click the CopyPayloadFromTask Assign activity in the branch. b) Click the green [+] icon and select Copy Operation to open the Create Copy Operation dialog box, and specify the following details:
Oracle SOA Suite 11g: Essential Concepts A - 114
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 9-2: Accessing the Human Task from the BPEL Process (continued)
i) In the From section: Change the Type list to Expression and in the Expression field, enter 'rejected'. ii) In the To section: Select Variables > Process > Variables > outputVariable > payload > Order > status.
c) Click OK. d) Click OK to return to the BPEL process.
Oracle SOA Suite 11g: Essential Concepts A - 115
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 9-2: Accessing the Human Task from the BPEL Process (continued)
5) Specify the message in the part of the taskSwitch Switch activity (if the request is expired). a) Double-click the CopyPayloadFromTask Assign activity in the branch.
b) Click the green [+] icon and select Copy Operation to open the Create Copy Operation dialog box, and specify the following details: i) In the From section: Change the Type list to Expression and in the Expression field, enter 'expired'.
Oracle SOA Suite 11g: Essential Concepts A - 116
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 9-2: Accessing the Human Task from the BPEL Process (continued)
ii) In the To section: Select Variables > Process > Variables > outputVariable > payload > Order > status. c) Click OK. d) Click OK to return to the BPEL process.
6) Create the task form for task details that includes the task payload and actions you defined in the task. Note: The task form is an ADF form that is created in a separate project. You can create a JSF project to manage the task form and point it to the task file that you create in your composite. When you want a default task form, it is a simple one-click operation. a) In the BPEL process, right-click the ManualPOApproval_1 Human Task activity and select the Auto-Generate Task Form option from the shortcut menu.
Oracle SOA Suite 11g: Essential Concepts A - 117
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 9-2: Accessing the Human Task from the BPEL Process (continued)
b) Enter ApproveTaskDetail in the project name field for the task form and click OK. JDeveloper generates the necessary artifacts for the ApproveTaskDetail project (it may look like nothing is happening at first, but be patient). You see the task details form (taskDetails1.jspx) open.
Oracle SOA Suite 11g: Essential Concepts A - 118
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 9-2: Accessing the Human Task from the BPEL Process (continued)
c) Save all and close the task form and task flow dialog box. 7) Save and close the BPEL process.
Oracle SOA Suite 11g: Essential Concepts A - 119
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 9-2: Accessing the Human Task from the BPEL Process (continued)
In this practice, you deploy the POProcessingComposite SOA composite application to the application server. You also test the SOA composite by using the Oracle Enterprise Manager 11g Fusion Middleware Control console. In the BPEL practice set, you create a large order, which the Mediator routes through the approveLargeOrder BPEL process. In this practice, you use the default Oracle BPM Worklist application to approve the order. 1) Deploy the ApproveTaskDetail project to Oracle SOA Suite 11g. a) Click the Applications Menu icon (next to Application_09) and select the Deploy > ApproveTaskDetail > to > MyApplicationServerConnection option from the listed options. Note: Never deploy the application by right-clicking the ApproveTaskDetail project and selecting the Deploy option from the shortcut menu. It is not a SOA Composite application.
b) In the Select Deployment Targets dialog box, select “soa_server1” and click OK.
c) View the Deployment – Log pane to verify that the deployment was successful.
Oracle SOA Suite 11g: Essential Concepts A - 120
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 9-3: Deploying and Testing the SOA Composite
2) Deploy the POProcessingComposite SOA composite to Oracle SOA Suite 11g. a) In the Application Navigator menu of JDeveloper, right-click POProcessingComposite (the SOA project) and select the Deploy > POProcessingComposite > to > MyApplicationServerConnection option. b) In the SOA Deployment Configuration dialog box, select the “Overwrite any existing composites with the same revision ID” option and click OK. Note: If you are redeploying your application with the same revision number, you must select the option to overwrite the previous version or enter a new version (revision ID). Otherwise the deployment will fail. c) View the Deployment – Log pane to verify that the deployment was successful. 3) Test the POProcessingComposite SOA composite with a set of predefined input parameters. a) Log in to the Oracle Enterprise Manager 11g Fusion Middleware Control console. b) Test the POProcessingComposite SOA composite. i) In the Oracle Enterprise Manager 11g Fusion Middleware Control page, you see two vertical panes. On the left pane, you see the domain and under it a list of folders. Expand the SOA > soa-infra (soa_server1) folder. You see POProcessingComposite. ii) Click the POProcessingComposite link to see the application details on the right pane. iii) Click the Test button on the POProcessingComposite page. iv) In the Test Web Service page, scroll down to the Input Arguments section and select XML View from the drop-down list. Delete the existing XML code in the text area in the XML view. v) Open the text file (po-large-iPod.txt) at D:\labs\Application_Files\test by using any text editor (such as notepad), and copy the XML code.
vi) In the Test Web Service page, paste the XML code in the text area of the XML view. vii) Click the Test Web Service button. Oracle SOA Suite 11g: Essential Concepts A - 121
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 9-3: Deploying and Testing the SOA Composite (continued)
viii) In the Test Web Service page, on the Response tabbed subpage, verify that the Test Status is passed. Note: The Test Web Service page does not show any response because this is a one-way invocation with no reply or callback. ix) Click the POProcessingComposite link in the left pane of the browser dialog box. You see that an instance has been added under the Recent Instances section. x) Click the Instance ID to see the flow trace of the composite. xi) In the Flow Trace page, under the Trace section, notice that the State column shows the Running status, the Mediator, BPEL, and the Human Workflow component.
c) Approve the order by using the Oracle BPM Worklist application. Oracle Worklist application is an application that can be used to view and manage human tasks. i) Open a Web browser and log in to the Oracle BPM Worklist application by specifying the following URL: http://localhost:8001/integration/worklistapp.
ii) Enter the user name as weblogic and the password as welcome1. Click Login.
Oracle SOA Suite 11g: Essential Concepts A - 122
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 9-3: Deploying and Testing the SOA Composite (continued)
iii) In the Oracle BPM Worklist page, click the most recent task to highlight it. The task details page opens it in the lower frame of the work list application. Note: The first time the task is opened, there will be a delay of a minute while the pieces of the form are compiled and loaded.
iv) When the form opens, you can see the task details and the different options. From the Actions menu, select Approve. This submits the task and notifies the BPEL to continue processing.
Note: You should use the Actions menu to select the task to approve or reject. If instead, you use the Approve or Reject buttons in the lower part of the dialog box, the screen will not change even though the task is submitted. Click the refresh icon at the top left to clear the task from the screen.
Oracle SOA Suite 11g: Essential Concepts A - 123
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 9-3: Deploying and Testing the SOA Composite (continued)
4) Revisit the Oracle Enterprise Manager 11g Fusion Middleware Control console and refresh the Flow Trace page. You see that the State column shows a Completed status for all the service components.
5) Observe the order status in the new text file that has been created by the File adapter service at the D:\labs\Application_Files\testResults directory. Hint: Check the date and time of the text file to view the most recent file created by the file adapter.
Oracle SOA Suite 11g: Essential Concepts A - 124
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 9-3: Deploying and Testing the SOA Composite (continued)
6) Execute the same test case again, and reject the order in the Oracle BPM Worklist application. Verify the result.
7) Close the Web browser window. 8) Close the Application_09.jws workspace and remove it from the JDeveloper IDE. a) From the Application menu, select Close Application. b) In the Confirm Close Application dialog box, select the first option (Close application and remove it from IDE) and click OK.
Oracle SOA Suite 11g: Essential Concepts A - 125
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 9-3: Deploying and Testing the SOA Composite (continued)
The goal of the practices in this lesson is to add and configure a Business Rule component in the POProcessingComposite SOA composite. The ManualApproval Business Rule is accessed by the approveLargeOrder BPEL process to make the decision of whether the human task is required for manual approval. If the total order value is more than or equal to $5000, a customer service representative must manually approve the order. In this practice set, you perform the following tasks: 1. Create a Business Rule component in the POProcessingComposite to specify the condition of manually approving only those orders that have the order value of more than or equal to $5000. 2. Access and configure the Business Rule component in the approveLargeOrder BPEL process. 3. Deploy and test the SOA composite in Oracle SOA Suite 11g.
Oracle SOA Suite 11g: Essential Concepts A - 126
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practices for Lesson 10
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
BPEL Process
Oracle SOA Suite 11g: Essential Concepts A - 127
Oracle University and In Motion Servicios S.A. use only
The following diagram illustrates the tasks to perform in this practice set.
In this practice, you create and configure the ManualApproval Business Rule component in the POProcessingComposite SOA composite. The business rule enables the composite to make the decision of whether the human task is required for manual approval or not. 1) Open the Application_10.jws workspace in JDeveloper. a) From the File menu, select Open. b) In the Open dialog box, navigate to the D:\labs\Application_10 directory. Select Application_10.jws and click the Open button. c) In the Application Navigator pane, expand the POProcessingComposite > SOA Content folder and double-click composite.xml to open it in the SOA Composite editor pane. 2) Add a Business Rule component to the POProcessingComposite. a) Ensure that the SOA option is selected in the Component palette drop-down list. b) Click and drag a Business Rule component from the Component palette to the Components column in the SOA Composite editor pane.
c) In the Create Business Rules dialog box: i) Specify the following options: Name: ManualApproval Package: poprocessingcomposite ii) Click the green [+] list and select Input.
Oracle SOA Suite 11g: Essential Concepts A - 128
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 10-1: Adding a Business Rule to POProcessingComposite
iii) In the Type Chooser dialog box, click the top-right button (Import Schema File) to import a schema, and then browse to the schema location: D:\labs\Application_Files\schemas\ OrderApproval.xsd to select the schema.
iv) In the Type Chooser dialog box, expand and select Project Schema Files > OrderApproval.xsd > orderValue for the input schema. Click OK.
Oracle SOA Suite 11g: Essential Concepts A - 129
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 10-1: Adding a Business Rule to POProcessingComposite (continued)
v) Click the green [+] list and select Output. vi) In the Type Chooser dialog box, expand and select Project Schema Files > OrderApproval.xsd > approval for the output schema. Click OK.
vii) Click OK to close the Create Business Rules dialog box. 3) Create the Business Rules by using the Rule editor. a) Double-click the Business Rule component in the SOA Composite editor to open the Rule editor. b) In the Rule editor, click the green [+] sign in Ruleset_1 to add a rule template.
Oracle SOA Suite 11g: Essential Concepts A - 130
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 10-1: Adding a Business Rule to POProcessingComposite (continued)
c) Click , and then select the left in the IF statement. d) Select the orderValue.price object.
e) Select the operator ( = = ) and change it to ( > = ) in the IF statement. f) Select the right in the IF statement, and change it to 5000. This completes the test.
g) The THEN clause configures the return result. Click and select “assert new”.
Oracle SOA Suite 11g: Essential Concepts A - 131
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 10-1: Adding a Business Rule to POProcessingComposite (continued)
h) Click and select approval.
i) Select the box and a dialog box opens to allow you to set the property values. Set the value of approvalRequired to true by doubleclicking the approvalRequired row on the Value column and specifying the value. Press Enter to accept the value.
j) Repeat the process to add a second rule for orders less than $5000. In this case, approval is not required.
Oracle SOA Suite 11g: Essential Concepts A - 132
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 10-1: Adding a Business Rule to POProcessingComposite (continued)
k) Ruleset_1 should match the following screenshot:
l) Save and close the Rules editor.
Oracle SOA Suite 11g: Essential Concepts A - 133
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 10-1: Adding a Business Rule to POProcessingComposite (continued)
In this practice, you add and configure a Business Rule activity in the approveLargeOrder BPEL process. In the Business Rule activity, you select the ManualApproval Business Rule component that you added to the POProcessingComposite SOA composite in the previous practice for implementing the condition of manually approving orders that are more than or equal to $5000. 1) In the SOA Composite editor, double-click the approveLargeOrder BPEL component to open the BPEL designer. 2) Create a BPEL variable to store the output from the ruleset. a) In the Structure palette of JDeveloper, expand Variables > Process and select the Variables node.
b) Click the green [+] icon to add a variable named approvalRequired. Select the Element type option, and browse and select the approval element from the OrderApproval.xsd schema. Click OK.
Oracle SOA Suite 11g: Essential Concepts A - 134
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 10-2: Accessing the Business Rule from the BPEL Process
3) Add a Business Rule activity into the BPEL workflow. a) Drag a Business Rule activity from the Component palette into the branch of the EvaluateCCStatus Switch activity, just before the ManualPOApproval_1 Human Task activity.
Oracle SOA Suite 11g: Essential Concepts A - 135
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 10-2: Accessing the Business Rule from the BPEL Process (continued)
b) In the Business Rule dialog box: i) Specify the following options: Name: ApprovalRule Dictionary: ManualApproval ii) In the Assign Input Facts tabbed subpage, click the green [+] icon.
iii) In the Decision Fact Map dialog box, create an expression using the expression builder to multiply the item price by the quantity. From: Select and enter the following expression: bpws:getVariableData('inputVariable','payload','/ns2:Orde r/ns2:price') * bpws:getVariableData('inputVariable','payload','/ns2:Orde r/ns2:qty')
To: Select the following variable: Variables > com_globalcompany…. > orderValue > price
Oracle SOA Suite 11g: Essential Concepts A - 136
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 10-2: Accessing the Business Rule from the BPEL Process (continued)
iv) Click OK. v) Click the Assign Output Facts tabbed subpage, and click the green [+] icon on it.
vi) In the Decision Fact Map dialog box, set the output value to the variable you just created (approvalRequired). From: Select the following variable: Variables > com_globalcompany…. > approval > approvalRequired To: Select the following variable: Variables > Process > Variables > approvalRequired > approval > approvalRequired
Oracle SOA Suite 11g: Essential Concepts A - 137
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 10-2: Accessing the Business Rule from the BPEL Process (continued)
vii) Click OK. viii) Click OK to close the dialog. 4) Add a Switch activity into the BPEL workflow to route the workflow data, based on the rule action. a) Drag a Switch activity from the Component palette below the ApprovalRule Rule activity.
b) Expand the Switch activity. c) Drag the ManualPOApproval_1 Human Task activity into the block for this Switch so that it only executes when the test case is true. There is the taskSwitch Switch activity that follows the ManualPOApproval_1 Human Task for processing the Human Task results (which sets the status to approved or rejected accordingly). Move the taskSwitch Switch activity into the new Switch activity’s block.
Oracle SOA Suite 11g: Essential Concepts A - 138
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 10-2: Accessing the Business Rule from the BPEL Process (continued)
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 10-2: Accessing the Business Rule from the BPEL Process (continued)
Oracle SOA Suite 11g: Essential Concepts A - 139
d) Use the Expression Builder to set the test case expression in the case block: bpws:getVariableData('approvalRequired','/ns4:approval/ns4: approvalRequired') = 'true'
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 10-2: Accessing the Business Rule from the BPEL Process (continued)
Oracle SOA Suite 11g: Essential Concepts A - 140
e) Drag an Assign activity from the Component palette to the block of the new Switch activity.
f) Double-click the Assign activity to edit it. g) Click the General tab and change the name to autoApproved. h) Click the Copy Operation tab. i) Click the green [+] icon and select Copy Operation to open the Create Copy Operation dialog box, and specify the following details: i) In the From section, change the Type list to Expression, and in the Expression field, enter 'approved'. ii) In the To section, select Variables > Process > Variables > outputVariable > payload > Order > status.
Oracle SOA Suite 11g: Essential Concepts A - 141
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 10-2: Accessing the Business Rule from the BPEL Process (continued)
j) Click OK. k) Click OK to return to the BPEL process. 5) The complete BPEL process looks like the following:
Oracle SOA Suite 11g: Essential Concepts A - 142
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 10-2: Accessing the Business Rule from the BPEL Process (continued)
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 10-2: Accessing the Business Rule from the BPEL Process (continued)
Oracle SOA Suite 11g: Essential Concepts A - 143
In this practice, you deploy the POProcessingComposite SOA Composite application to the application server. You also test the SOA composite by using the Oracle Enterprise Manager 11g Fusion Middleware Control console. 1) Deploy the POProcessingComposite SOA composite to Oracle SOA Suite 11g. a) In the Application Navigator menu of JDeveloper, right-click POProcessingComposite (the SOA project) and select the Deploy > POProcessingComposite > to > MyApplicationServerConnection option. b) In the SOA Deployment Configuration dialog box, select the “Overwrite any existing composites with the same revision ID” option and click OK. c) View the Deployment – Log pane to verify that the deployment was successful. 2) Test the POProcessingComposite SOA composite with a set of predefined input parameters. a) Log in to the Oracle Enterprise Manager 11g Fusion Middleware Control console. b) Test the POProcessingComposite SOA composite. i) On the Oracle Enterprise Manager 11g Fusion Middleware Control page, you see two vertical panes. In the left pane, you see the domain and under it a list of folders. Expand the SOA > soa-infra (soa_server1) folder. You see POProcessingComposite. ii) Click the POProcessingComposite link to see the application details in the right pane. iii) Click the Test button on the POProcessingComposite page. iv) On the Test Web Service page, scroll down to the Input Arguments section and select XML View from the drop-down list. Delete the existing XML code in the text area in the XML view. v) Open the text file (po-small-Headset.txt) at D:\labs\Application_Files\test by using any text editor, and copy the XML code.
vi) In the Test Web Service page, paste the XML code in the text area of the XML view. vii) Click the Test Web Service button. c) Verify the result of testing the POProcessingComposite SOA composite. i) In the Test Web Service page, on the Response tabbed subpage, verify that the Test Status is Passed. Note: The Test Web Service page does not show any response because this is a one-way invocation with no reply or callback. ii) Click the POProcessingComposite link in the left pane of the browser dialog box. You see that an instance has been added in the Recent Instances section. iii) Click the Instance ID to see the flow trace of the composite. Oracle SOA Suite 11g: Essential Concepts A - 144
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 10-3: Deploying and Testing the SOA Composite
iv) In the Flow Trace page, in the Trace section, verify that the State column shows completed for the service, component, and reference. v) You can also verify the result by opening the text file that has been created by the File adapter service at the D:\labs\Application_Files\testResults directory with a text editor. Notice how field names have been translated by the mapping and are different from the input. Hint: Check the date and time of the text file to view the most recent file created by the file adapter. Additional Test Cases There are four test cases for the POProcessingComposite SOA composite depending on the input data value of the total quantity: 1. Under 10 units: auto approval without the BPEL Process component 2. Order value (price x quantity) under $5000: auto approval using the BPEL Process component and the Business Rules component, but no Human Task component Note: Quantity more than 10 units 3. Order value more than or equal to $5000: manual approval using the BPEL Process component, Business Rules component, and Human Task component Note: Quantity more than 10 units 3) Close the Web browser window.
Oracle SOA Suite 11g: Essential Concepts A - 145
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 10-3: Deploying and Testing the SOA Composite (continued)
In this practice set, you secure the SOA composite by attaching policies to the service endpoints. You perform the following task: 1. Attach user_name_security_policy to the receivePO Web service. 2. Attach log_policy to the receivePO service endpoint.
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practices for Lesson 11
Oracle SOA Suite 11g: Essential Concepts A - 146
In this practice/task, you will attach the username_token_security_policy to the receivePO service endpoint. This policy uses the credentials in the Username Token WS Security SOAP header to authenticate users. In order to attach this policy, use the following details: Step Screen/Page Description a. Start Oracle Enterprise Manager Fusion Middleware Control
Choices or Values In your browser, type the following URL: http://localhost:7001/em
Specify the username and password: Username: weblogic Password: welcome1 Click “so-infra” under the SOA folder. Select the POProcessing composite by clicking it. Click the Policies tab. Click Attach To/Detach From. Select receivePO. Under available policies, select “oracle/wss_username_token_service_policy.” Click the Attach button. Click the Validate button. If a “successful” message appears, click OK. Click the Test tab. In the Test Web Service page, under the Request tab, select the WSS Username Token option. Provide the username and password: Username: weblogic Password: welcome1
b.
Policies Page
c.
Attaching Policy
d.
Select the Policy
e.
Validation
f.
Test - Authentication
g.
Test – Input Arguments
Under Input Arguments, select XML view. Copy the contents from the po-smallHeadset.txt file (you can find this file under D:\labs\Application_Files\test) and paste the data in the XML view (under the input arguments section in the test Web services page).
h.
Test - Verify
Click Test Web Service.
Oracle SOA Suite 11g: Essential Concepts A - 147
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 11-1: Attach username_token_security_policy to the receivePO Service Endpoint
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
b)
Oracle University and In Motion Servicios S.A. use only
Practice 11-1: Attach username_token_security_policy to the receivePO Service Endpoint (continued)
a)
Oracle SOA Suite 11g: Essential Concepts A - 148
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
d)
Oracle University and In Motion Servicios S.A. use only
Practice 11-1: Attach username_token_security_policy to the receivePO Service Endpoint (continued)
c)
Oracle SOA Suite 11g: Essential Concepts A - 149
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
f)
Oracle University and In Motion Servicios S.A. use only
Practice 11-1: Attach username_token_security_policy to the receivePO Service Endpoint (continued)
e)
Oracle SOA Suite 11g: Essential Concepts A - 150
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
h)
Oracle University and In Motion Servicios S.A. use only
Practice 11-1: Attach username_token_security_policy to the receivePO Service Endpoint (continued)
g)
Oracle SOA Suite 11g: Essential Concepts A - 151
In this practice/task, you attach log_policy to the receivePO service endpoint. This policy causes the request, response and fault messages to be sent to a message log. In order to attach this policy, use the following details: Step Screen/Page Description a. Start Oracle Enterprise Manager Fusion Middleware Control
b.
Policies Page
c.
Attaching Policy
d.
Select the Policy
e.
Validation
f.
Test - Authentication
g.
Test – Input Arguments
h.
Test - Verify
Choices or Values In your browser, type the following URL: http://localhost:7001/em
Specify the username and password: Username: weblogic Password: welcome1 Click soa-infra under the SOA folder. Select the POProcessing composite by clicking it. Click the Policies tab. Click Attach To/Detach From. Select receivePO. Under Attached Policies, select oracle/log_policy. Click the Attach button. Click the Validate button. If a “successful” message appears, click OK. Click the Test tab. In the Test Web Service page, on the Request tabbed subpage, select the WSS Username Token option. Provide the username and password: Username: weblogic Password: welcome1 Under Input Arguments, select the XML view. Copy the contents from the po-small-Headset.txt file (you can find this file under D:\labs\Application_Files\test) and paste the data in the XML view (under the input arguments section in the test Web services page). Click Test Web Service.
Oracle SOA Suite 11g: Essential Concepts A - 152
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Practice 11-2: Attach log_policy to the receivePO Service Endpoint
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
b)
Oracle University and In Motion Servicios S.A. use only
Practice 11-2: Attach log_policy to the receivePO Service Endpoint (continued) a)
Oracle SOA Suite 11g: Essential Concepts A - 153
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
d)
Oracle University and In Motion Servicios S.A. use only
Practice 11-2: Attach log_policy to the receivePO Service Endpoint (continued) c)
Oracle SOA Suite 11g: Essential Concepts A - 154
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
f)
Oracle University and In Motion Servicios S.A. use only
Practice 11-2: Attach log_policy to the receivePO Service Endpoint (continued) e)
Oracle SOA Suite 11g: Essential Concepts A - 155
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
h)
Oracle University and In Motion Servicios S.A. use only
Practice 11-2: Attach log_policy to the receivePO Service Endpoint (continued) g)
Oracle SOA Suite 11g: Essential Concepts A - 156
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Copyright © 2009, Oracle. All rights reserved.
Oracle University and In Motion Servicios S.A. use only
Introduction to Linux
• • • •
Linux is a UNIX-based operating system, created by Linus Torvalds at the University of Helsinki in Finland. It was developed under the GNU General Public License, allowing source code to be freely available. Each distribution was developed for a particular purpose. TUX, the penguin, is the official mascot of Linux.
Copyright © 2009, Oracle. All rights reserved.
What Is Linux? Linux is an operating system that was initially created as a hobby by Linus Torvalds, a student at the University of Helsinki in Finland. Torvalds had an interest in Minix, a small UNIX system, and decided to develop a system that exceeded the Minix standards. He began his work in 1991 when he released version 0.02, and worked steadily until 1994 when version 1.0 of the Linux kernel was released. Linux is developed under the GNU General Public License and its source code is freely available to everyone. As a result, a number of companies, organizations, and individuals have developed their own “versions” of the Linux operating system, known as distributions. Each distribution, with associated programs and utilities, was developed for a particular purpose— for example, on computers that receive heavy traffic (such as Web page servers), where security is a priority, or on top of an existing operating system (such as Windows) so that people can try out Linux under familiar conditions. Although Linux is technically only the kernel, it is commonly considered to be all of the associated programs and utilities of a distribution. Linux has an online manual containing descriptions for all commands (see the man utility).
Oracle SOA Suite 11g: Essential Concepts B - 2
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
What Is Linux?
The following distributions are certified and supported by Oracle: • Red Hat Enterprise Linux AS and ES • UnitedLinux, which includes the following products from Conectiva, SCO, SuSE, and TurboLinux: – Conectiva Linux Enterprise Edition powered by UnitedLinux – SCO Linux Server 4.0 powered by UnitedLinux – SuSE Linux Enterprise Server 8 (SLES 8) powered by UnitedLinux – TurboLinux Enterprise Server 8 powered by UnitedLinux
Copyright © 2009, Oracle. All rights reserved.
What Is Oracle’s Strategy for Linux? Oracle is fully committed to supporting the Linux operating system. In fact, Oracle was the first commercial database available on Linux. By supporting Linux with Oracle’s industry-leading products, Oracle Corporation enables customers to deploy enterprise-class solutions on the least expensive hardware and operating system infrastructure. With technical contributions to enhance Linux, with direct support of the key Linux operating systems, and with strategic partnerships, Oracle is offering an Unbreakable Linux platform for customers to safely deploy Linux in a mission-critical environment. Oracle’s delivery of a complete solution, including direct technical support of the operating system, is critical to the customer’s success. Red Hat Enterprise Linux AS, version 2.1 Red Hat has been working with Oracle Corporation to provide a more reliable and scalable platform for enterprise Linux users, which resulted in Linux AS, version 2.1. It includes many of the same packages as Red Hat 7.2, but also includes enhancements for enterprise features. UnitedLinux UnitedLinux is the result of a consortium of Linux vendors. It is based on the SuSE kernel and supports asynchronous input/output.
Oracle SOA Suite 11g: Essential Concepts B - 3
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
What Is Oracle’s Strategy for Linux?
In Linux, there are directories, subdirectories, and files—but everything is just a file.
Copyright © 2009, Oracle. All rights reserved.
File System and Basic Directory Structure Every Linux user has a login username and password. Each user is provided with a separate workspace. In Linux, there are directories, subdirectories, and files; but everything is just a file. Some key directories are: • /bin: The /bin directory contains programs, also known as binary files. • /boot: The /boot directory contains the Linux kernel. • /dev: The /dev directory contains the devices that your system uses or can use. Everything is considered a file in Linux, so your hard disk is kept track of as a file that sits there. Your hard drive will be known as /dev/hda. • /etc: The /etc directory contains most of the configuration files for Linux. • /lib: The /lib directory contains library files. Linux stores library files here for systemwide shared access to libraries. • /root: The /root directory is a restricted area for all users except those with root privileges. The root privilege allows users to perform all system functions. See the su command for instructions on obtaining root privileges. • /sbin: The /sbin directory contains programs (binary files) used by root. • /tmp: The /tmp directory is used to store temporary files.
Oracle SOA Suite 11g: Essential Concepts B - 4
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
File System and Basic Directory Structure
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
File System and Basic Directory Structure (continued) • /usr: The /usr directory contains files and programs that are used by all users on the system. • /var: The /var directory is for certain files that may change their sizes (that is, variable size)—for example, databases or incoming email from an email server.
Oracle SOA Suite 11g: Essential Concepts B - 5
• • • •
Environment-based commands Information-based commands File system commands Common vi editing commands
• •
Common FTP communication commands Archive utilities
Copyright © 2009, Oracle. All rights reserved.
Shell Commands All operating systems use a shell to get commands from the keyboard to the computer. The most popular shell used for Linux is the bash shell; bash means “Bourne Again Shell.” It is a free version of the Bourne shell. For quick reference, the commands are divided as follows: • Environment-based commands • Information-based commands • File system commands • Common vi editing commands • Common FTP communication commands • Archive utilities
Oracle SOA Suite 11g: Essential Concepts B - 6
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Shell Commands
• • • • • • • •
date df du echo env exit export free
• • • • • • • •
ifconfig kill login logout ps su top uname
Copyright © 2009, Oracle. All rights reserved.
Environment-Based Commands The usage for environment-based commands is as follows: • date: Display current date and time - Usage: date • df: Display disk space used and available for each file system - Usage: df • du: Display disk space usage for each file of the current directory - Usage: du • echo: Print a line of text – used to display an environment variable setting - Usage: echo $ORACLE_HOME (displays the setting for the ORACLE_HOME environment variable) • env: Display all environment variable settings - Usage: env • exit: Log out from a session (see also the su command) - Usage: exit
Oracle SOA Suite 11g: Essential Concepts B - 7
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Environment-Based Commands
Oracle SOA Suite 11g: Essential Concepts B - 8
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Environment-Based Commands (continued) • export: Set environment variables - Usage: export ORACLE_HOME=/home/oracle/infra (sets the ORACLE_HOME environment variable) • free: Display amount of free and used memory - Usage: free • ifconfig: Show the network status - Usage: ifconfig • kill: Stop a process (see also the ps command) - Usage: kill –9 pid (where pid is the process ID) • login: Log in to a system and change the environment to the login user - Usage: login (You are prompted for the username to log in with.) • logout: Log out of the system - Usage: logout • ps: Show currently running processes - Usage: ps –ef | grep keyword (displays all processes containing keyword) • su: Modify user and group ID - Usage: su root (You are prompted for the root password to have root privileges.) • top: Display top CPU processes - Usage: top (Use “q” to quit the display.) • uname: Print system information - Usage: uname –a (to print all system information)
• • • • • • •
> >> | cat diff file find
• • • • • • •
grep info less ls man more pwd
Copyright © 2009, Oracle. All rights reserved.
Information-Based Commands The usage for information-based commands is as follows: • >: Redirect output - Usage: ls > filename (lists all files in a directory and writes them to a file called filename. If filename already exists, the contents are overwritten, otherwise a new file is created.) • >>: Append contents - Usage: ls >> filename (The output is written to the end of filename. If filename does not already exist, it is created.) • |: A “pipe” for redirecting the output of a command to another command - Usage: ps –ef | grep keyword (displays all processes containing keyword) • cat: Concatenate files and print on standard output - Usage: cat filename (displays the contents of filename to the screen) • diff: Find the differences between two files - Usage: diff file1 file2 (displays the difference between file1 and file2) • file: Determine file type - Usage: file filename (displays the file type—for example, text or executable)
Oracle SOA Suite 11g: Essential Concepts B - 9
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Information-Based Commands
Oracle SOA Suite 11g: Essential Concepts B - 10
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Information-Based Commands (continued) • find: Find files - Usage: find –name *oracle* (finds all files containing “oracle”) find –mmin –10 (finds all files created in the last 10 minutes) • grep: Find words in files - Usage: grep –ir ‘oracle’ filename (searches for “oracle” in filename, ignoring case [the –i directive] and searching directories [the –r directive]) • info: Provide information on a specified topic - Usage: info ls (displays an information page with multiple topic nodes) - Del/Space (moves to the previous/next page within the current topic) - n/p (moves to the next/previous topic node) - m topicname (moves to a specific topic) • less: Display contents of a file, allowing backward and forward scrolling - Usage: less filename (Use “f” to move forward, “b” to move backward, and “q” to quit.) - diff file1 file2 | less (displays the difference between two files and pipe the results through “less”) • ls: List storage (that is, display the contents of the current directory) - Usage: ls –al (lists all files in the current directory) ls –al *html (lists all HTML files in the current directory) • man: Display a manual page - Usage: man find (displays the manual for the find command) • more: Display contents of a file - Usage: more filename (uses SPACE to move forward and “q” to quit.) ls –al | more (lists the directory and pipe the results through more) • pwd: Print working directory - Usage: pwd (shows the full path of the current directory)
• • • •
cd chmod chown cp
• • • •
mkdir mv rm rmdir
Copyright © 2009, Oracle. All rights reserved.
File System Commands The usage for file system commands is as follows: • cd: Change directory - Usage: cd /dir/files (changes into the /dir/files directory) - cd directoryname (changes into the directoryname directory located under the current directory) - cd ../directoryname (changes into the directoryname directory located above the current directory) • chmod: Change the permissions on a file or directory - Usage: chmod 7777 filename (grants read, write, and execute permissions to all users accessing filename; computes the octal number as follows: read (4), write (2), execute (1) and identifies the user’s access positionally, through the letters “ugoa” where (u) is the user who owns it, (g) is for other users in the file’s group, (o) is for other users not in the file’s group, or (a) for all users)
Oracle SOA Suite 11g: Essential Concepts B - 11
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
File System Commands
Oracle SOA Suite 11g: Essential Concepts B - 12
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
File System Commands (continued) • chown: Change the owner or group for a file - Usage: chown owner:group filename (changes the owner and group of filename to the current user) • cp: Copy files - Usage: cp file ../newFile (copies file into the directory above the current directory and renames it as newFile) • mkdir: Make directory - Usage: mkdir newdir (makes a new directory newdir under the current directory) - mkdir /usr/newdir (makes a new directory newdir under the /usr directory) • mv: Move (rename) files - Usage: mv oldName newName (renames oldName as newName) • rm: Remove files - Usage: rm filename (removes filename from the current directory) - rm *old (removes all files ending in “old”) • rmdir: Remove directories - Usage: rmdir directoryname (removes directoryname from the current directory)
vi is a full-screen text editor with two modes: • •
Input mode: Text is entered in the document by inserting or appending. Command mode: You can move within the document and merge, search, and cut lines.
Copyright © 2009, Oracle. All rights reserved.
Common vi Editing Commands The vi program is a full-screen text editor, which has two modes: • Input mode: Text is entered in the document by inserting or appending. • Command mode: You can move within the document and merge, search, and cut lines. Common vi Commands • ESC: Exits input mode and puts you in command mode • h, j, k, l: Left, down, up, right (or use the arrow keys) • w, W, b, B: Forward, backward by word • 0, $: First, last position of current line • /pattern: Search forward for pattern. • ?pattern: Search backward for pattern. • n,N: Repeat last search in the same, opposite direction. • x: Delete character. • dd: Delete current line. • D: Delete to end of line. • dw: Delete word. • p, P: Put deleted text before, after cursor. • u: Undo the last command. • .: Repeat the last command. Oracle SOA Suite 11g: Essential Concepts B - 13
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Common vi Editing Commands
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Common vi Editing Commands (continued) • i, a: Insert text before, after cursor (puts you into input mode). • o, O: Open new line for text below, above cursor (puts you into input mode). • ZZ: Save file and quit. • :w: Save file. • :q!: Quit, without saving changes.
Oracle SOA Suite 11g: Essential Concepts B - 14
Command
Description
ftp hostname.com
To connect to hostname.com
type binary
To set the type for binary files
type ascii
To set the type for ASCII files
get filename
To get a file from the FTP site
put filename
To put a file on the FTP site
mget *jar
To get multiple JAR files from FTP site
mput *war
To put multiple WAR files on FTP site
prompt
To shut off or turn on prompting
Copyright © 2009, Oracle. All rights reserved.
Complete FTP Communication Commands The complete list of FTP commands is as follows: • !: Escape to the shell. • ?: Print local help information. • append: Append to a file. • ascii: Set the ASCII transfer type. • bell: Beep when command is completed. • binary: Set the binary transfer type. • bye: Terminate the FTP session and exit. • cd: Change the remote working directory. • close: Terminate the FTP session. • delete: Delete the remote file. • debug: Toggle debugging mode. • dir: List contents of the remote directory. • disconnect: Terminate the FTP session. • get: Receive the file. • glob: Toggle metacharacter expansion of local file names. • hash: Toggle printing `#' for each buffer transferred. • help: Print local help information. Oracle SOA Suite 11g: Essential Concepts B - 15
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Common FTP Communication Commands
Oracle SOA Suite 11g: Essential Concepts B - 16
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Complete FTP Communication Commands (continued) • lcd: Change the local working directory. • literal: Send arbitrary FTP command. • ls: List contents of the remote directory. • mdelete: Delete multiple files. • mdir: List contents of multiple remote directories. • mget: Get multiple files. • mkdir: Make a directory on the remote machine. • mls: List contents of multiple remote directories. • mput: Send multiple files. • open: Connect to the remote TFTP. • prompt: Force interactive prompting on multiple commands. • put: Send one file. • pwd: Print the working directory on the remote machine. • quit: Terminate the FTP session and exit. • recv: Receive the file. • remotehelp: Get help from the remote server. • rename: Rename the file. • rmdir: Remove the directory on the remote machine. • send: Send one file. • status: Show the current status. • trace: Toggle packet tracing. • type: Set the file transfer type. • user: Send new user information. • verbose: Toggle verbose mode.
The following archive utilities are available for Linux: • tar • gzip and gunzip • bzip2 and bunzip2 • zip and unzip
Copyright © 2009, Oracle. All rights reserved.
Archive Utilities The following archive utilities are available for Linux: tar tar stands for tape archive and was originally designed for tape backups, but is used to create a tar file anywhere on the file system. The tar utility creates one “tar file” (also known as a “tarball”) out of several files and directories. A tar file is not compressed. It is just a heap of files assembled together in “one container.” So, the tar file takes up the same amount of space as all the individual files combined, plus a little extra. A tar file can be compressed by using gzip or bzip2. The following are some examples: • tar -cf backup.tar /home/ftp/pub: Creates a tar file named backup.tar from the contents of the /home/ftp/pub directory • tar -tvf example.tar: Lists the contents of example.tar to the screen • tar -xvf example.tar: Extracts the contents of example.tar and displays the files as they are extracted • tar -zxvpf my_tar_file.tar.gz: Unzips the tar file and then extracts the contents
Oracle SOA Suite 11g: Essential Concepts B - 17
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Archive Utilities
bzip2 and bunzip2 The bzip2 utility compresses files by using the Burrows-Wheeler block sorting text compression algorithm and Huffman coding. Compression is generally considerably better than that achieved by more conventional compressors. The bunzip2 utility (or bzip2 –d) decompresses a bzip2 file. The following are some examples: • bzip2 *: Compresses each file in the current directory and renames the file with a .bz2 extension • bunzip2 my_file.bz2: Decompresses the my_file.bz2 file • bzip2 –d my_file.bz2: Decompresses the my_file.bz2 file zip and unzip zip is a compression and file-packaging utility for UNIX, VMS, MS-DOS, OS/2, Windows NT, Minix, Atari and Macintosh, Amiga, and Acorn RISC OS. It is compatible with PKZIP (Phil Katz’s ZIP for MS-DOS systems). The companion program “unzip” unpacks zip archives. The zip and unzip utilities can work with archives produced by PKZIP, and PKZIP and PKUNZIP can work with archives produced by zip. The zip program puts one or more compressed files into a single zip archive, along with information about the files (name, path, date, time of last modification, protection, and check information to verify file integrity). An entire directory structure can be packed into a zip archive with a single command. Compression ratios of 2:1 to 3:1 are common for text files. The following are some examples: • zip my_files *: Creates a compressed file named my_files.zip, containing all the files in the current directory • unzip my_files.zip: Expands the zip file within the current directory
Oracle SOA Suite 11g: Essential Concepts B - 18
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Archive Utilities (continued) The options are defined as follows: • -c: Create an archive. • -f: Use the file in question (required option). • -p: Preserve dates, permissions of the original files • -t: List the contents of an archive. • -v: Verbose (that is, tar informs you what files it is extracting) • -x: Extract files from the tarball. • -z: Unzip the file first. gzip and gunzip The gzip utility compresses a tar file, reducing the amount of space required to store the archived tar file. The gunzip utility (or gzip –d) expands (decompresses) the gzip file. gunzip recognizes the special extensions .tgz and .taz as shorthands for .tar.gz and .tar.Z, respectively. The following are some examples: • gzip my_tar_file.tar: Compresses the tar file and renames it with a .gz extension • gzip -d my_tar_file.tar.gz: Zips the tar file • gunzip my_tar_file.tar.gz: Unzips the tar file
• •
Case-sensitivity The clear utility
• • • •
Shift + Page Up/Page Down Tab Color coding The touch utility
•
Web sites
Copyright © 2009, Oracle. All rights reserved.
Shortcuts and Tips • Linux is a case-sensitive operating system. You must enter the case correctly. • In the terminal window, to clear the contents, enter clear. • To scroll up, press Shift + Page Up. • To scroll down, press Shift + Page Down. • Press Tab to complete the remainder of the text. (Linux beeps to let you know that is as far as it can complete the text; you now need to add more characters to resolve ambiguities.) • When you enter ls –al, the result is color coded. Blue is for directories. • To create a file, enter touch filename. If the file name does not exist, it gets created. If the file name already exists, touch alters its time stamp to the current time. Note that, in Linux, you cannot easily name files with spaces in them, therefore, you must use underscores or a capital letter to separate words. For example, “touch my file” does not work. You must write either “touch myFile” or “touch my_file.” This applies to creating directories as well. • The following are helpful Linux Web sites: - www.oracle.com/linux - www.linux.org - www.linux.com - www.redhat.com Oracle SOA Suite 11g: Essential Concepts B - 19
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Shortcuts and Tips
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Copyright © 2009, Oracle. All rights reserved.
Oracle University and In Motion Servicios S.A. use only
Perform Common Tasks with Oracle JDeveloper
After completing this lesson you should be able to: • Create a database connection • Create an application server connection • Create an application • Create an empty project • Create an SOA project • Create a project from existing sources • Deploy an SOA composite application
Copyright © 2009, Oracle. All rights reserved.
Oracle SOA Suite 11g: Essential Concepts C - 2
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Objectives
Step 1 of 3: Type
Step 2 of 3: Create
Step 3 of 3: View
Copyright © 2009, Oracle. All rights reserved.
Create a Database Connection To access your Oracle XE Database from Oracle JDeveloper, you must first create a connection by performing the following steps: 1. From the File menu select New. In the New Gallery window, click the General tab and select Connections. In the Items list, select Database Connection 2. In the Create Database Connection dialog box, enter the following configuration details: - Connection Name: soademoDatabase - Connection Type: Oracle (JDBC) - Username: system - Password: oracle - Save Password: Checked - Enter Custom JDBC URL: Unchecked - Driver: thin - Host Name: localhost - JDBC Port: 1521 (or the port number of your database) - SID: XE (or the SID of your database) 3. After you have entered the configuration details, test the database connection by clicking the Test Connection button.
Oracle SOA Suite 11g: Essential Concepts C - 3
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Create a Database Connection
Step 1 of 7
Step 2 of 7: Type
Step 3 of 7: Authentication
Copyright © 2009, Oracle. All rights reserved.
Create an Application Server Connection You need to create a connection from JDeveloper to the Oracle WebLogic Server configured for Oracle SOA Suite in order to deploy from JDeveloper. The Application Server connection can be created by performing the following steps: 1. Select New from the File menu. In the New Gallery, in the Categories tree, select General, and then Connections. Select Application Server Connection, and click OK. The Create Application Server Connection Type page is displayed. 2. Enter WLS_AppserverConnection in the Connection Name field and select WebLogic 10.3 from the Connection Type list, and click Next. 3. Enter the WebLogic Server username and password. Click Next. The Configuration Page is displayed.
Oracle SOA Suite 11g: Essential Concepts C - 4
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Create an Application Server Connection
Step 4 of 7: Configuration
Step 5 of 7: Test
Step 6 of 7: Completion Step 7 of 7: View
Copyright © 2009, Oracle. All rights reserved.
Create an Application Server Connection (continued) The Connection Authentication page is displayed 4. Enter the following values in the Configuration page: - WebLogic Hostname (Administration Server): localhost - Port: 7001 - WLS Domain: soabam_domain (or the appropriate domain name for the environment) Click Next. The Test page is displayed. 5. Click Test Connection. The Finish page is displayed. 6. If the status is successful, click Finish. 7. View the results.
Oracle SOA Suite 11g: Essential Concepts C - 5
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Create an Application Server Connection
Step 1 of 3
Step 2 of 3
Copyright © 2009, Oracle. All rights reserved.
Create an Application Start the Create Application Wizard by doing the following: a. Select New from the File menu. b. In the New Gallery, in the Categories tree, select General, and then select Generic Application under Items. This invokes the Create Application Wizard. To use the wizard, do the following: 1. Specify the application name and the directory under which it needs to be created. Click Next. 2. The project name page is displayed. Specify the project name and select the type of project that you want to create. In the slide, the project type selected is SOA. Click Next.
Oracle SOA Suite 11g: Essential Concepts C - 6
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Create an Application
Step 3 of 3
Copyright © 2009, Oracle. All rights reserved.
Create an Application (continued) 3. The Project setting page is displayed (in the slide the project setting displayed is specific to SOA). After you have completed, click Finish.
Oracle SOA Suite 11g: Essential Concepts C - 7
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Create an Application
1
2
3
Copyright © 2009, Oracle. All rights reserved.
Create an Empty Project To create a project: 1. Select New from the File menu. In the New Gallery select Projects under the General category and Generic Project from the Items tab.This invokes the Create Generic Project wizard. 2. Specify the Project name and the directory under which you want to create the same, and specify the type of Project that you want to create. Click Next. 3. Based on the type of project you chose, you will be prompted to specify the settings. After you have completed, click Finish.
Oracle SOA Suite 11g: Essential Concepts C - 8
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Create an Empty Project
1
2
3
Copyright © 2009, Oracle. All rights reserved.
Create an SOA Project To create an SOA project: 1. Select New from the File menu. In the New Gallery, select Projects under the General category and then SOA Project from the Items tab. This invokes the Create SOA Project wizard. 2. Specify the Project name and the directory under which you want to create the same, select SOA from the Project Technologies tab, and then click Next. 3. Specify the Composite Template. Click Finish.
Oracle SOA Suite 11g: Essential Concepts C - 9
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Create an SOA Project
1
2
Copyright © 2009, Oracle. All rights reserved.
Create a Project from Existing Sources To create a project from an existing source: 1. Select New from the File menu. In the New Gallery, select “Projects from Existing Source” under the General category, and then Click OK. This invokes the “Create Project from Existing Source” wizard. 2. Specify the project name and the directory under which you want to create the same.
Oracle SOA Suite 11g: Essential Concepts C - 10
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Create a Project from Existing Sources
3
4
Copyright © 2009, Oracle. All rights reserved.
Create a Project from Existing Sources (continued) 3. Specify the source path and the output directory. Click Next. 4. Specify the Libraries that need to be added. Click Next. 5. After you have completed, click Finish.
Oracle SOA Suite 11g: Essential Concepts C - 11
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Create a Project from Existing Sources
5
Copyright © 2009, Oracle. All rights reserved.
Create a Project from Existing Sources (continued) The wizard creates the project and the selected files.
Oracle SOA Suite 11g: Essential Concepts C - 12
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Create a Project from Existing Sources
Copyright © 2009, Oracle. All rights reserved.
Deploy an SOA Composite Application 1. In the Application Navigator, select the project from Projects. 2. Right-click the project and select Deploy. Specify the Application Server on which you want your project to be deployed.
Oracle SOA Suite 11g: Essential Concepts C - 13
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Deploy an SOA Composite Application
Copyright © 2009, Oracle. All rights reserved.
Deploy an SOA Composite Application (continued) 3. Choose the target server. 4. Specify a new revision ID or check the “Overwrite any composite with the same revision ID” check box. Click OK. 5. If this is a first-time deployment, or if the connection is timed out, you are prompted for the Admin username and password. 6. On successful compilation, “Build successful” is displayed in the SOA log.
Oracle SOA Suite 11g: Essential Concepts C - 14
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Deploy an SOA Composite Application
In this lesson, you should have learned how to: • Create a database connection • Create an application server connection • Create an application • Create an empty project • Create an SOA project • Create a project from existing sources • Deploy an SOA composite application
Copyright © 2009, Oracle. All rights reserved.
Oracle SOA Suite 11g: Essential Concepts C - 15
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Summary
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Copyright © 2009, Oracle. All rights reserved.
Oracle University and In Motion Servicios S.A. use only
SOA Adoption Planning Principles
After completing this lesson you should be able to: • Describe the SOA adoption planning activities • Identify the need for an SOA Reference Architecture • Understand the stages in the development of the SOA Reference Architecture
Copyright © 2009, Oracle. All rights reserved.
Oracle SOA Suite 11g: Essential Concepts D - 2
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Objectives
•
•
SOA adoption will require most companies to change their business model, which requires a matching modification of their technology infrastructure. In order to overcome the barriers and challenges to SOA, a well-structured SOA organizational governance needs to be established.
Copyright © 2009, Oracle. All rights reserved.
SOA Adoption As many enterprises seek to expand their SOA initiative, there are fundamental issues that must be considered in SOA adoption planning. Businesses continue to struggle with the issue of bridging the business and IT gap. SOA can help bridge that gap by focusing on delivering business services that the business can understand, rather than programs and systems. The focus on services delivering business functionality assist in aligning business and IT. The benefits of SOA do not come automatically and there are a number of areas and disciplines that need to be addressed. These areas include developing and executing an SOA strategy, understanding and managing the demands that a shared infrastructure brings, and understanding the organizational commitments required for SOA to deliver the benefits that it extols. If enterprises do not address these demands, then they will encounter a number of challenges in executing their SOA program.
Oracle SOA Suite 11g: Essential Concepts D - 3
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
SOA Adoption
• • • •
Getting and sustaining commitment Driving measurable adoption through the SOA program Leveraging the technology Defining a phased change approach
Copyright © 2009, Oracle. All rights reserved.
SOA Adoption Planning Activities The various SOA adoption planning activities can be discussed as follows: • Getting and sustaining commitment: This activity involves: - Completing the stakeholder community - Moving through the change curve - Sustaining focus through “line-of-sight” goals • Driving measurable adoption through the SOA program: This activity involves: - Establishing a governance model - Generating pipeline and milestone delivery - Using metrics to accelerate adoption and ensure “line-of-sight” goals • Leveraging the technology: This activity involves the following: - Ensuring SOA capabilities will continue to enable business innovation - Providing tools and processes will improve ease of use and drive adoption - Emphasizing the need for an SOA Reference Architecture for the entire enterprise
Oracle SOA Suite 11g: Essential Concepts D - 4
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
SOA Adoption Planning Activities
In order to reach out to all stakeholders to achieve a greater level of compliance, you need to prioritize the following actions: • Complete stakeholder mapping and define roles and responsibilities • Ensure that stakeholders understand that driving and enforcing may be needed • Raise the stakes to help people through the change • Ensure that a consumer group is established to work as part of wider SOA team
Copyright © 2009, Oracle. All rights reserved.
SOA Adoption Planning Activities: Completing the Stakeholder Community In order to reach out to all stakeholders, the stakeholder community must include consumer personnel equally with IT delivery personnel. Executives need to understand that their role is to enforce and drive transformation to SOA as much as its support. The consumer group that is established needs to work as a part of the SOA team in order to identify services and map to capabilities. In addition, if the key leadership of an organization is only supporting the SOA initiative, it is destined to fail. In fact, a wider and deeper evangelism and commitment is needed.
Oracle SOA Suite 11g: Essential Concepts D - 5
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
SOA Adoption Planning Activities: Completing the Stakeholder Community
In order to have a smooth transition towards SOA adoption, you need to prioritize the following actions: • Determine where all SOA adoption teams are on the change curve • Initiate and drive a focused change program • Consider appointing a change evangelist and executing a project specifically to drive people towards commitment
Copyright © 2009, Oracle. All rights reserved.
SOA Adoption Planning Activities: Moving Through the Change Curve For a smooth transition toward SOA to take place, you need to explain the need for the change and how the change could benefit you as well as the organization.
Oracle SOA Suite 11g: Essential Concepts D - 6
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
SOA Adoption Planning Activities: Moving Through the Change Curve
To develop the overall strategy, prioritize the following actions: • Establish guiding principles • Establish measurable “line-of-sight” goals in accordance with guiding principles • Consider a rewards/enforcement system
Copyright © 2009, Oracle. All rights reserved.
SOA Adoption Planning Activities: Establishing "Line-of-Sight" Goals SOA adoption planning best practices: • Set pragmatic SOA guiding principles that simply encapsulate the high-level vision • Ensure that “line-of-sight” goals are in place and tracked; explain why this is important • Set bold, aggressive goals whose “line of sight” can be rolled up to the following principles: - Culture-changing behaviors, quality, and so on - Base measurement and reward systems on these value-adding outcomes
Oracle SOA Suite 11g: Essential Concepts D - 7
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
SOA Adoption Planning Activities: Establishing "Line-of-Sight" Goals
In order to establish a Milestone Delivery Plan, prioritize the following actions: • Perform an analysis of the projects pipeline to show how using SOA can support these projects • Seek a Chief Technology Officer (CTO) mandate if needed to use SOA services in these projects • Drive adoption by prioritizing a few “trailblazer” projects to demo early success
Copyright © 2009, Oracle. All rights reserved.
SOA Adoption Planning Activities: Establish a Milestone Delivery Plan The SOA adoption plan will be overwhelming to most stakeholders if there is no recognizable milestone delivery plan in place. If a project pipeline is established early on to include these “trailblazer” prototype projects, delivery efforts are likely to be far more successful because of the iterative feedback available from implementation successes as well as the failures along the way. The best practices that can be followed are: • Drive adoption by prioritizing a few “trailblazer” projects to demo early success • Capture results to feed in lessons learned, continue process improvement, and simplify the adoption level of effort
Oracle SOA Suite 11g: Essential Concepts D - 8
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
SOA Adoption Planning Activities: Establish a Milestone Delivery Plan
The usage of metrics is vital to understand the progress of SOA adoption. The actions to be prioritized are: • Decide which metrics will prove SOA benefits/value and adoption progress • Develop benchmark capabilities and requirements for SOA adoption to make progress measurement more real • Develop cost/benefit modeling tools to inform future investment decisions • Define metadata standards for metrics instrumented into all SOA assets
Copyright © 2009, Oracle. All rights reserved.
SOA Adoption Planning Activities: Usage of Metrics Developing a simple “dashboard” to show progress as well as to capture important trends provides a greater incentive for key stakeholders. The following are best practices that you can follow: • Benchmark key metrics now to allow real progress tracking later. • Because service-enabled capabilities are used more widely, it is important to demonstrate value at the individual service level. • Non-financial benefits, such as reduced time-to-market, shorter release cycles, and the number of services, are as key as financial benefits.
Oracle SOA Suite 11g: Essential Concepts D - 9
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
SOA Adoption Planning Activities: Usage of Metrics
Services that are mapped to business processes are key to the success of the SOA initiative. In order to ensure that SOA capabilities continue to enable business innovation, prioritize the following actions: • Define and enable a service identification process that will avoid frequent and often costly service version updates • Model business processes going forward to enhance the prospect of service reuse and enable the business process to the service feedback and optimization loop
Copyright © 2009, Oracle. All rights reserved.
SOA Adoption Planning Activities: Enabling Business Innovation The following are best practices that you need to follow to ensure that SOA capabilities continue to enable business innovation: • Ensure business user representation in the stakeholder group. • Enhance the prospect of innovation with appropriate service reuse. • Define well understood business/engineering aligned processes to address service identification, service prioritization, and service granularity.
Oracle SOA Suite 11g: Essential Concepts D - 10
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
SOA Adoption Planning Activities: Enabling Business Innovation
In order to drive SOA adoption, the proper use of tools and processes is vital. Under this activity, prioritize these actions: • Communicate, educate, and align best practices and frameworks to consumers by building a reference application • Standardize on content and document management • Provide processes, tools, and utilities to ease learning and to enable repeatability
Copyright © 2009, Oracle. All rights reserved.
SOA Adoption Planning Activities: Usage of Tools and Processes The following are the best practices that you need to follow to enable the proper use of tools and processes: • Make common frameworks and other identified patterns standard across IT. • Publish best practices so that consumers approach tasks consistently. • Provide the development and design tools along with the appropriate training and mentoring to enable the realization of the various methodologies.
Oracle SOA Suite 11g: Essential Concepts D - 11
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
SOA Adoption Planning Activities: Usage of Tools and Processes
•
•
•
An SOA Reference Architecture defines the target architecture and the principles to be used by an organization’s architects to make architecture and design decisions on their projects. An SOA Reference Architecture should include a defined set of relevant IT, industry, and enterprise standards along with a glossary establishing a common vocabulary with which to discuss a particular problem space and relevant solutions. It should include multiple views, derived from viewpoints addressing the concerns of many stakeholders (not just other architects).
Copyright © 2009, Oracle. All rights reserved.
The Need for an SOA Reference Architecture The SOA Reference Architecture provides a high-level view to a desired outcome on a threeyear planning window. This is a “living” document and incremental releases of the SOA Reference Architecture will be produced at regular intervals during the execution of an SOA roadmap. The SOA Reference Architecture anchors architectural concepts, links principles and guidelines, and requirements and motivation, to establish a consistent framework for the elaboration of concrete architectures for specific SOA implementations. A critical aspect of an SOA Reference Architecture is to establish a link to business drivers, including relevant motivation derived from a business plan, in addition to traditional requirements. Other related work, including standards, patterns and so on, is often shared by other enterprise planning artifacts and may not be exclusively within the SOA Reference Architecture itself.
Oracle SOA Suite 11g: Essential Concepts D - 12
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
The Need for an SOA Reference Architecture
Stages in the development of the SOA Reference Architecture:
Align IT with business
Develop a baseline
Create Reference Architecture
Create infrastructure roadmap
Copyright © 2009, Oracle. All rights reserved.
Developing the SOA Reference Architecture Several key individuals will be involved across the various planning and design stages to include: • Business executives (or IT liaisons) provide business drivers for the SOA Reference Architecture • IT executives provide IT objectives, O&G model, funding model, and project list information • Enterprise architects provide current reality and future vision architecture and roadmap guidance These activities can be categorized into four general stages: • Align IT with business • Develop a baseline • Create the SOA Reference Architecture • Create the SOA infrastructure roadmap
Oracle SOA Suite 11g: Essential Concepts D - 13
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Developing the SOA Reference Architecture
The goal at this stage is to fully capture business needs by: • Gaining an understanding of important business drivers that affect the direction of IT • Discussing IT objectives with reference to business drivers • Discussing SOA benefits and challenges with higher-level business executives • Prioritizing SOA benefits based on business and IT drivers
Copyright © 2009, Oracle. All rights reserved.
Developing the SOA Reference Architecture: Align IT with Business The primary set of activities involved in this stage include: • Organizing a kickoff session to plan future activities • Collecting business drivers and IT objectives from all stakeholders • Discussing perceived SOA benefits and challenges • Formalizing, distributing, reviewing, and finalizing the analysis This first set of activities is used to collect business and IT drivers that affect the SOA Reference Architecture decisions related to the future vision. It also serves to collect benefits and challenges that management perceives to be associated with SOA. The results are factored into the SOA Reference Architecture planning sessions and listed in the SOA Reference Architecture document.
Oracle SOA Suite 11g: Essential Concepts D - 14
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Developing the SOA Reference Architecture: Align IT with Business
The goal at this stage is to complete an assessment of your SOA readiness by cataloging and documenting the current: • IT environment, key systems, technologies, and products • SOA initiatives, service developments, and supporting infrastructure • IT organization, governance, and funding models • Level of support (or resistance) for current SOA initiatives
Copyright © 2009, Oracle. All rights reserved.
Developing the SOA Reference Architecture: Develop a Baseline The primary activities at this stage include: • Collecting information on enterprise architecture and technology • Collecting information on current and future projects • Producing an SOA assessment and readiness document The results will establish a baseline for gap analysis. In order to provide a starting point for the SOA infrastructure roadmap, all key stakeholders need to obtain an understanding of the current state of IT. An assortment of activities may be used to properly document information on the current enterprise architecture, infrastructure, technologies, and products, as well as IT organizational structures, governance, and project funding models. This stage involves all key stakeholders, with extra emphasis on the technical staff and enterprise architects, as most information gathered pertains to areas of technology. A document that provides the assessment, readiness, and “current-state” of the organization is produced, which is later used as a starting point for the infrastructure roadmap.
Oracle SOA Suite 11g: Essential Concepts D - 15
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Developing the SOA Reference Architecture: Develop a Baseline
The goal of this stage is to: • Leverage collective thought leadership to define your organization’s future SOA vision • Document the vision as your SOA Reference Architecture
Copyright © 2009, Oracle. All rights reserved.
Developing the SOA Reference Architecture: Create SOA Reference Architecture The primary activities at this stage include: • Training or mentoring employees with less SOA experience • Developing planning sessions to specify future vision architecture, principles, guidelines, infrastructure, technologies, products, and so on • Formalizing, distributing, reviewing, and finalizing the complete vision document which becomes the enterprise’s SOA Reference Architecture The goal is to establish an SOA Reference Architecture for the organization, aligned with business strategy and drivers to guide future projects toward a common SOA vision. The SOA Reference Architecture is a higher level of abstraction than ordinary project architectures, as it is meant to provide guidance to all projects as opposed to being a specification for any one project. The SOA Reference Architecture represents a desired future vision, approximately two to three years into the future.
Oracle SOA Suite 11g: Essential Concepts D - 16
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Developing the SOA Reference Architecture: Create SOA Reference Architecture
The goal at this stage is to: • Provide an incremental plan for achieving the future vision • Synergize efforts with current and future projects
Copyright © 2009, Oracle. All rights reserved.
Developing the SOA Reference Architecture: Create SOA Infrastructure Roadmap The primary activities at this stage include: • Performing the gap analysis relative to your current baseline • Reviewing projects for infrastructure build-out and infrastructure services construction • Mapping gaps, projects, and deliverables to roadmap phases • Producing the SOA infrastructure roadmap and distributing it to all relevant stakeholders It is important to provide a roadmap to plan the build-out of SOA infrastructure, for example, infrastructure assets, such as service bus, registry, and security products, and common infrastructure services, such as security, logging, and error handling services. Certain legacy application access services may also be included, as appropriate. The roadmap includes one to three current or future projects identified for deployment on the SOA infrastructure in the roadmap planning horizon. The roadmap helps to drive agility through the specification of standards-based development and common reusable interfaces and helps to maximize the flexibility and reusability of existing applications and infrastructure. The roadmap helps both to realize reliability, scalability, availability, and security across the enterprise and to enable the on-going management of the SOA Reference Architecture and overall SOA initiative. Oracle SOA Suite 11g: Essential Concepts D - 17
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Developing the SOA Reference Architecture: Create SOA Infrastructure Roadmap
It is important for an organization to have an SOA Governance model in place, in order to : • Maximize the reuse of services • Minimize the duplication of business functionality in services • Maximize the business value of services • Maximize the efficiency of creating new services or modifying existing services • Define the available services and their functionality • Clearly state what services are available and what functions they perform
Copyright © 2009, Oracle. All rights reserved.
Oracle SOA Suite 11g: Essential Concepts D - 18
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
SOA Governance Model
SOA Steering Committee Executive Sponsorship Vision and Strategy
SOA Architecture Group Execute Vision and Strategy Define and Provide Guidance
SOA Architecture And Advisory Team Service Engineering
Service Functional Analyst
Service Development Team
Service Requirements
Service Development
Copyright © 2009, Oracle. All rights reserved.
Example of an SOA Governance Model The slide describes an example of an SOA Governance Model consisting of the following structures: • SOA Steering Committee: It comprises the executive stakeholders in IT delivery and provides the overall guidance for SOA adoption, including the prioritization of investment in services and the funding of the delivery of those services and the shared infrastructure on which they operate. • SOA Architecture Group: This group is responsible for setting the overall technical direction for SOA adoption and for measuring compliance against that direction as services are delivered. • SOA Architecture and Advisory Team: This group provides the function of spotting opportunities for building or harvesting services, for advertising the availability of services to enterprise constituent, and for monitoring compliance in the use of services. • Service Functional Analyst: This group seeks to provide the link between business needs and IT development project proposals, specifically business service capabilities and definitions. • Service Development Team: This group is chartered with developing services that are infrastructural in nature and that benefit the entire customer organization, spanning all of its business units. Oracle SOA Suite 11g: Essential Concepts D - 19
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Example of an SOA Governance Model
In this lesson, you should have learned how to: • Describe the SOA adoption planning activities • Identify the need for an SOA Reference Architecture • Understand the stages in the development of the SOA Reference Architecture • Define the need of SOA Governance Model
Copyright © 2009, Oracle. All rights reserved.
Oracle SOA Suite 11g: Essential Concepts D - 20
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Summary
ADF BC: Application Development Framework Business Components APS: Application Platform Suite. A comprehensive and integrated enterprise application infrastructure. BPEL: Business Process Execution Language. An XML-based language designed to enable task sharing for a Service-Oriented Architecture environment, even across multiple organizations, by orchestrating and choreographing individual Web services. BPEL4WS: Business Process Execution Language for Web Services Component: A modular unit of functionality accessed through one or more interfaces. CORBA: Common Object Requesting Broker Architecture. A set of industry standards published by OMG that defines a distributed model for object application systems. CRM: Customer Relationship Management. A broad term that covers concepts used by companies to manage their relationships with customers, including the capture, storage, and analysis of customer information. DAS: Data Access Service. A Java class that provides methods to load a data graph from a data store and to save a data graph back into that data store. DCOM: Distributed Component Object Model. A proprietary Microsoft technology for communication among software components distributed across networked computers. EAI: Enterprise Application Integration. Refers to the plans, methods, and tools aimed at modernizing, consolidating, and coordinating the computer applications in an
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
Glossary
business and its applications, seeing how existing applications fit into the new model, and then devising ways to efficiently reuse what already exists while adding new applications and data. EDL: Event Definition Language. EDSOA: Event Driven Service Oriented Architecture. An architecture that combines SOA’s request-response and Event-Driven Architecture’s (EDA) event publishsubscribe paradigms. EJB: Enterprise Java Bean. Defines a Java API for server-side enterprise components that execute within a J2EE-compliant applicant server. The specification also details remote communication protocols, persistence, transactions, concurrency control, naming services, and deployment descriptors. ETL: Extract Transform Load. The processes that enable companies to move data from multiple sources, reformat and cleanse it, and load it into another database, a data mart, or a data warehouse for analysis, or onto another database, a data mart, or a data warehouse for analysis, or onto another operational system to support a business process. IAAS: Information as a Service IIOP: Internet Inter-ORB Protocol. An open-standard protocol published by OMG to be used for communication in CORBA-based systems. JAM: Java Applications Manager. Enables launching Java Applications. JAXB: Java Architecture for XML binding. Provides a convenient way to process XML content using Java objects by binding its XML schema to Java Representation. JCA: Java Connector Architecture. A J2EE-based technology standard for connecting application servers and enterprise information systems (EIS).
Oracle SOA Suite 11g: Essential Concepts Glossary - 2
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
enterprise. EAI may involve developing a total new view of an enterprise's
systems. The API supports both the point-to-point (and queuing) and publish/subscribe interaction models. It is the primary standard to provide a reliable foundation for loosely coupled, asynchronous messaging within a distributed environment. LOB: Line of Business Mashup: Web page or application that combines data or functionality from two or more external sources to create a new service MDS: Metadata Service Repository. It is a critical component of SOA, providing a shared location to manage metadata and govern the asset life cycle. MOM: Message-Oriented Middleware. The term for application communication software that connects systems in a network by carrying and distributing messages between them. The messages may contain data and/or software instructions. MOM infrastructure is typically built around a queuing system that stores messages pending delivery and keeps track of whether and when each message has been delivered. MTOM: Message Transmission Optimization Mechanism. It is a method of efficiently sending binary data to and from Web services. OASIS: Organization for the Advancement of Structured Information Standards. An international consortium that drives the development, convergence, and adoption of e-business standards. The consortium produces Web services standards and standardization efforts in the public sector and for application-specific markets. Portlet: Pluggable user interface software components that are managed and displayed in Web portals. REST: Representational State Transfer. A collection of network architecture principles that outline how resources are defined and addressed.
Oracle SOA Suite 11g: Essential Concepts Glossary - 3
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
JMS: Java Messaging Services. A Java API for interacting with messaging-based
RMI: Remote Method Invocation. A RPC protocol published for accessing Java object methods remotely within a distributed application system. ROI: Return On Investment. A performance measure used to evaluate the efficiency of an investment or to compare the efficiency of a number of different investments. RPC: Remote Procedure Call. A protocol used in the client-server model that allows one application (the client) to request a service from another application (the server) located on another computer in a network without having to understand network details. SCA: Service Component Architecture Schematron: A rules-based XML Schema language that uses XPath expressions to describe validation rules. SDO: Service Data Objects. A data programming architecture and API for the Java platform that unifies data programming across data source types (relational databases, entity EJB components, XML sources, Web services, JCA, JSP), provides robust support for common application patterns, and enables applications, tools, and frameworks to move easily, query, view, bind, update, and introspect data. SLA: Service-Level Agreement. A contract between a service provider and a service requester that stipulates a specified level of service. An SLA could contain agreements on support options, enforcement or penalty provisions for services not provided, a guaranteed level of system performance, availability, and other quality-of-service (QoS) standards. SMTP: Simple Mail Transfer Protocol SOAP: Simple Object Access Protocol. An XML-based messaging protocol maintained by W3C that is used to encode the information in Web service request and
Oracle SOA Suite 11g: Essential Concepts Glossary - 4
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
RFID: Radio Frequency Identification
independent of any operating system or protocol and can be transported using a variety of protocols, including HTTP and JMS. Stateless: Having no information about what occurred previously. Most applications maintain state, which means they remember what users were doing the last time that they ran the application, and they remember all of the configuration settings. In contrast, the Web is intrinsically stateless because each request for a new Web page is processed without any knowledge of the previous pages requested. UDDI: Universal Description, Discovery, and Integration. An OASIS standard for a platform-independent, XML-based registry to publish and discover network-based software components and services. WLST: WebLogic Scripting Tool WSDL: Web Services Description Language. A standard language for defining a Web service description, which uses XML and XSD to describe the port type and its operations, the message formats, and the protocol bindings. WSFL: Web Service Flow Language. It is an XML language for the description of Web services compositions. WSIF: Web Services Invocation Framework. It is a simple Java API for invoking Web Services. WSIL: Web Services Inspection Language. It is an XML document format to facilitate the discovery and aggregation of Web service descriptions in a simple and extensible fashion. XSD: XML Schema Definition. A W3C recommendation to formally describe the schema and elements in an XML document. An XSD defines a structure for the custom elements and their corresponding attributes, their relationship to each other, and what types of information/data may be contained in them. This can be
Oracle SOA Suite 11g: Essential Concepts Glossary - 5
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
response messages before sending them over a network. SOAP messages are
particular schema. XSLT: Extensible Stylesheet Language Transformations (XSLT) is the language used in XSL style sheets to transform XML documents into other XML documents
Oracle University and In Motion Servicios S.A. use only
THESE eKIT MATERIALS ARE FOR YOUR USE IN THIS CLASSROOM ONLY. COPYING eKIT MATERIALS FROM THIS COMPUTER IS STRICTLY PROHIBITED
used to verify that the content of an XML instance document adheres to a
Oracle SOA Suite 11g: Essential Concepts Glossary - 6