Sei sulla pagina 1di 230

Oracle SOA Suite 11g: Essential

Concepts
Volume II - Student Guide
D58786GC10
Edition 1.0
September 2010
D61581
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Copyright 2009, 2010, Oracle and/or its affiliates. All rights reserved.
Disclaimer
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.
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. Governments 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.
Authors
Bijoy Choudhury
Swarnapriya Shridhar
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
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
iii
Contents




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
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
iv

2 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
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
v
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

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
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
vi
Packaged Application and Legacy Adapters 4-42
Quiz 4-43
Summary 4-44
Practice 4: Overview Designing Services for SOA Implementations 4-45

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
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
vii
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

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


O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
viii
8 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
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
ix
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

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
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
x
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

Appendix A: Practices and Solutions

Appendix B: Introduction to Linux
What Is Linux? B-2
What Is Oracles 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
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
xi
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

Glossary
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D



Appendix A
Practices and Solutions










O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 2
Table of Contents

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 J Developer Connection to the Application Server ................... 9
Practice 2-2: Browsing an SOA Composite in Oracle J Developer 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 J Developer 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


O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 3
Practices Overview

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.




O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 4
Practices for Lesson 1

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.


O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 5
Practice 1-1: Specifying Tasks in Workflow for a Purchase Order
Processing Business Scenario
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 customers 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.




















O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 1-1: Specifying Tasks in Workflow for a Purchase Order
Processing Business Scenario (continued)
Oracle SOA Suite 11g: Essential Concepts A - 6























































?
Status=invalidCreditCard
?
Status=approved
Rejected
Status=rejected
Status=approved
Status = ?
>= $5000
New
Order
invalid

Text
File

?
Get
Amount
Approved
Approval
?
>= 10

?
Amount
Status
?
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 1-1: Specifying Tasks in Workflow for a Purchase Order
Processing Business Scenario (continued)
Oracle SOA Suite 11g: Essential Concepts A - 7
Solution to Practice 1-1:
Status=invalidCreditCard
< $5000
Status=approved
Rejected
Status=rejected
Status=approved
Status=approved
>= $5000
New
Order
invalid

Text
File
Get Credit
Card Status
Get
Amount
Approved
Approval
< 10
>= 10
Get
Manual
Approval
Amount
Status
Check
Quantity
valid
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 8
Practices for Lesson 2

The goal of the practices for this lesson is to set up the practice development
environment. In this practice, you start Oracle J Developer 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 J Developer to WebLogic Server.
2. Browse an existing SOA composite application in J Developer.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 9
Practice 2-1: Creating a JDeveloper Connection to the
Application Server
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:

<J un 16, 2009 12: 59: 43 AM EDT> <Not i ce> <WebLogi cSer ver > <BEA-
000360> <Ser ver st ar t ed i n RUNNI NG mode>

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:

I NFO: Fabr i cPr ovi der Ser vl et . st at eChanged SOA Pl at f or mi s
r unni ng and accept i ng r equest s

3) On the Desktop, double-click the J Developer 11g desktop icon to start J Developer.
4) On the Migrate User Settings window, click No.

5) On the J Developer window, click the View >Resource Palette menu.
6) On the J Developer 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 Choices or Values
a. Create Application Server On the Name and Type page enter:
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 2-1: Creating a JDeveloper Connection to the
Application Server (continued)
Oracle SOA Suite 11g: Essential Concepts A - 10
Step Screen/Page Description Choices or Values
Connection Step 1 of 5 Connection Name:
MyAppl i cat i onSer ver Connect i on
Accept default for other items, and click Next
b. Create Application Server
Connection Step 2 of 5
On the Authentication page enter:
Username: weblogic
Password: welcome1
Click Next
c. Create Application Server
Connection Step 3 of 5
On the Configuration page enter:
WLS Domain: soa_domain
Accept defaults for remaining fields, and click
Next.
d. Create Application Server
Connection Step 4 of 5
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)


O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 2-1: Creating a JDeveloper Connection to the
Application Server (continued)
Oracle SOA Suite 11g: Essential Concepts A - 11
b) Username: webl ogi c Password: wel come1


c)

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 2-1: Creating a JDeveloper Connection to the
Application Server (continued)
Oracle SOA Suite 11g: Essential Concepts A - 12
d)





O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 13
Practice 2-2: Browsing an SOA Composite in Oracle JDeveloper
11g
In this practice, you open an existing SOA composite application in J Developer and
identify the various service components. In order to open an existing application in
J Developer, execute the following steps:
1) In the Application Navigator pane, click Open Application (or you can select File >
Open).



2) Navigate to the D: \ l abs\ Appl i cat i on_02\ Cr edi t Car dVal i dat i on directory,
and open the Cr edi t Car dVal i dat i on. j ws file.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 2-2: Browsing an SOA Composite in Oracle JDeveloper
11g (continued)
Oracle SOA Suite 11g: Essential Concepts A - 14
3) In the Open Warning window, click Yes.

4) You see the application files and artifacts in the Application Navigator pane. Double-
click composi t e. 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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 2-2: Browsing an SOA Composite in Oracle JDeveloper
11g (continued)
Oracle SOA Suite 11g: Essential Concepts A - 15

Optionally, double-click the CreditCardValidationProcess BPEL process to open the
BPEL designer and view the BPEL activities.
6) Close the Cr edi t Car dVal i dat i on workspace and remove it from the J Developer
IDE.
a) From the Application menu, select Close Application.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 2-2: Browsing an SOA Composite in Oracle JDeveloper
11g (continued)
Oracle SOA Suite 11g: Essential Concepts A - 16
b) In the Confirm Close Application dialog box, select the Close application and
remove it from IDE option and click OK.





O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 17
Practices for Lesson 3

In this practice, you work on a set of paper-based questions that covers service life-cycle
management and SOA governance.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 18
Practice 3-1: Paper-Based Questions

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

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 3-1: Paper-Based Questions (continued)
Oracle SOA Suite 11g: Essential Concepts A - 19
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















O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 3-1: Paper-Based Questions (continued)
Oracle SOA Suite 11g: Essential Concepts A - 20

Solutions to Practice 3-1 (Paper-Based Questions)

1 - a, b, and c

2 - a, b, and d

3 - a, b

4 - d

5 - a, b, and c

6 - a

7 - a, b, c, and d

8 - a, c

9 - b

10 - c

11 - a

12 - d

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 21
Practices for Lesson 4

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 J Developer 11g IDE.

Your tasks in this practice set are as follows:
1. Modify a schema document by using the XSD editor in J Developer.
2. Modify a WSDL document by using the WSDL editor in J Developer.



O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 22
Practice 4-1: Modifying an XSD Document
In this practice, you modify an XSD schema by using Oracle J Developer 11g.
1) Launch Oracle J Developer 11g (if not already open).
Hint: Double-click the J Developer icon on the desktop to launch J Developer.
2) Open the Appl i cat i on_04. j ws workspace in J Developer.
a) From the File menu, select Open.
b) Navigate to the D: \ l abs\ Appl i cat i on_04 directory. Select
Appl i cat i on_04. j ws and click the Open button.
c) View the projects, files, and directories of the Appl i cat i on_04. j ws workspace
in the Application Navigator pane.

3) Open and modify the r esponse. xsd schema by using J Developer XSD Visual
editor.
a) In the Application Navigator pane, expand CreditCardValidation >Resources.
b) Double-click r esponse. 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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 4-1: Modifying an XSD Document (continued)
Oracle SOA Suite 11g: Essential Concepts A - 23
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.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 4-1: Modifying an XSD Document (continued)
Oracle SOA Suite 11g: Essential Concepts A - 24
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: ar gs0
type: xsd: st r i ng
Press Enter to accept the values.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 4-1: Modifying an XSD Document (continued)
Oracle SOA Suite 11g: Essential Concepts A - 25

4) Save the r esponse. xsd schema.
5) Validate the XSD schema.
a) In the Application Navigator pane, right-click r esponse. 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.


O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 26
Practice 4-2: Modifying a WSDL Document
In this practice, you modify a WSDL document by using Oracle J Developer 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
<schema> 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: r esponse. xsd
namespace: ht t p: / / www. exampl e. or g
Press Enter to accept the values.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 4-2: Modifying a WSDL Document (continued)
Oracle SOA Suite 11g: Essential Concepts A - 27

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 ( ) on the Messages box to expand it in the WSDL
editor pane.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 4-2: Modifying a WSDL Document (continued)
Oracle SOA Suite 11g: Essential Concepts A - 28
iii) Click the icon on the Messages box to add a message.

iv) In the Create Message dialog box, enter the Message Name as
messageOut put 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
messageOut put node in the WSDL editor pane.

vii) In the Create Part dialog box, enter the following values and click OK:
Part Name: par amet er s
Reference Type: element
Reference value: t ns: r esponse
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 4-2: Modifying a WSDL Document (continued)
Oracle SOA Suite 11g: Essential Concepts A - 29

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
Val i dat eCr edi t Car dSer vi ce node.

ii) In the Create Operation dialog box, enter the following values and click OK:
Operation Name: Val i dat eCr edi t Car d
Operation Type: Request Response
Input: ns:messageInput
Output: ns:messageOutput

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 4-2: Modifying a WSDL Document (continued)
Oracle SOA Suite 11g: Essential Concepts A - 30

iii) Expand the Val i dat eCr edi t Car d node and its subsequent nodes to view
the structure.

d) Add a binding:
i) Click the icon on the Bindings/Partner Links Types box of the WSDL
editor pane.

ii) In the Create Binding dialog box, deselect the SOAP11 option and select the
SOAP12 option.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 4-2: Modifying a WSDL Document (continued)
Oracle SOA Suite 11g: Essential Concepts A - 31
iii) In the SOAP12 section, specify the following values for the respective fields
and click OK.
Binding Name: Val i dat eCr edi t Car dSer vi ceSOAP12Bi ndi ng
Message Encoding: Document/Literal

iv) Expand the Val i dat eCr edi t Car dSer vi ceSOAP12Bi ndi ng 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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 4-2: Modifying a WSDL Document (continued)
Oracle SOA Suite 11g: Essential Concepts A - 32

ii) In the Create Service dialog box, enter the service name as
Val i dat eCr edi t Car dSer vi ce and click OK.

iii) Click and drag a port component from the Component palette to the
Val i dat eCr edi t Car dSer vi ce node.

iv) In the New Port dialog box, specify the following values for the respective
fields and click OK.
Port Name: Val i dat eCr edi t Car dSer vi ceSoap12Ht t pPor t
Binding Name: ns: Val i dat eCr edi t Car dSer vi ceSOAP12Bi ndi ng

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 4-2: Modifying a WSDL Document (continued)
Oracle SOA Suite 11g: Essential Concepts A - 33
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 Val i dat eCr edi t Car dSer vi ceSoap12Ht t pPor t node in the WSDL
editor pane.

vii) In the Insert soap12:address dialog box, enter the location as
ht t p: / / l ocal host : 8001/ cont ext r oot / Val i dat eCr edi t Car dSer vi
ceI mpl Ser vi ce. 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.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 4-2: Modifying a WSDL Document (continued)
Oracle SOA Suite 11g: Essential Concepts A - 34
b) In the Messages Log pane, verify that the WSDL document has neither errors
nor warnings.

5) Close the Appl i cat i on_04 workspace and remove it from the J Developer 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.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 35
Practices for Lesson 5

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 J Developer 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.





O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 36
Practice 5-1: Deploying a Prebuilt SOA Composite by Using
Oracle JDeveloper 11g
In this practice, you deploy the prebuilt CreditCardValidation (ValidationForCC) SOA
Composite application to the Oracle SOA Suite 11g by using Oracle J Developer 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 Cr edi t Car dVal i dat i on. j ws workspace in J Developer.
a) From the File menu, select Open.
b) In the Open dialog box, navigate to the
D: \ l abs\ Appl i cat i on_02\ Cr edi t Car dVal i dat i on directory. Select
Cr edi t Car dVal i dat i on. j ws 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 er r or code
r et ur ned [ 403] ) while deploying applications from J Developer. In such case,
disable the Proxy settings in J Developer, and restart J Developer. To disable the Proxy
settings, navigate to Tools >Preferences >Web Browser and Proxy, and deselect the
Use HTTP Proxy Server option. Restart J Developer after making the changes.
a) In the Application Navigator menu of J Developer, 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_ser ver 1). Accept the default composite revision ID and click OK.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 5-1: Deploying a Prebuilt SOA Composite by Using
Oracle JDeveloper 11g (continued)
Oracle SOA Suite 11g: Essential Concepts A - 37

c) In the Authorization Request dialog box, enter webl ogi c in the Username field
and wel come1 in the Password field. Click OK.

d) View the Deployment Log pane to verify that the deployment is successful.

3) Close the Appl i cat i on_02 workspace and remove it from the J Developer 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.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 38
Practice 5-2: Creating an SOA Composite Application
Workspace
In this practice, you create an application workspace and an SOA project by using Oracle
J Developer 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: Appl i cat i on_05
Directory: D: \ l abs\ Appl i cat i on_05
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 5-2: Creating an SOA Composite Application
Workspace (continued)
Oracle SOA Suite 11g: Essential Concepts A - 39

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.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 5-2: Creating an SOA Composite Application
Workspace (continued)
Oracle SOA Suite 11g: Essential Concepts A - 40
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: POPr ocessi ngComposi t e
Directory: D: \ l abs\ Appl i cat i on_05\ POPr ocessi ngComposi t e
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 5-2: Creating an SOA Composite Application
Workspace (continued)
Oracle SOA Suite 11g: Essential Concepts A - 41
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.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 5-2: Creating an SOA Composite Application
Workspace (continued)
Oracle SOA Suite 11g: Essential Concepts A - 42
e) The new, empty SOA composite should look like the following screenshot:
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 43
Practice 5-3: Adding a Service Interface to the SOA Composite
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
Choices or Values
a. Create Web
Service

Name: r ecei vePO
Type: Service
WSDL URL: Click the Generate WSDL from schema(s)
icon.

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: \ l abs\ Appl i cat i on_Fi l es\
schemas\ Pur chaseOr der . xsd.
Click OK.

f. Import
Schema File

Click OK.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 5-3: Adding a Service Interface to the SOA Composite
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 44
g. Localize Files Click OK.
h. 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
Click OK.
j. Create Web
Service
Click OK.


a)


b)


O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 5-3: Adding a Service Interface to the SOA Composite
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 45
c)


d)


e)



O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 5-3: Adding a Service Interface to the SOA Composite
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 46
f)


g)


h)

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 5-3: Adding a Service Interface to the SOA Composite
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 47

i)


j)

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 48
Practice 5-4: Adding an External Reference to the SOA
Composite
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
Description
Choices or Values
a. Create Web
Service

Name: get Cr edi t Car dSt at us
Type: Reference
WSDL URL: Click the Find existing WSDLs icon.
b. SOA
Resource
Browser
Select Resource Palette from the list.
c. SOA
Resource
Browser
Expand Application Server >MyApplicationServerConnection >
SOA >ValidateForCC [1.0], and select
cr edi t car dst at us_ep.
Click OK.
d. Create Web
Service
Click OK.


O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 5-4: Adding an External Reference to the SOA
Composite (continued)
Oracle SOA Suite 11g: Essential Concepts A - 49
a)


b)


c)

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 5-4: Adding an External Reference to the SOA
Composite (continued)
Oracle SOA Suite 11g: Essential Concepts A - 50
d)


3) Close the Appl i cat i on_05. j ws workspace and remove it from the J Developer
IDE.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 51
Practices for Lesson 6

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 composites instance details, the message flow, and the audit trail
of the SOA composite.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 52
Practice 6-1: Testing an SOA Composite by Using Oracle
Enterprise Manager Fusion Middleware Control
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:
ht t p: / / l ocal host : 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: webl ogi c
Password: wel come1

iii) Click Continue.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 6-1: Testing an SOA Composite by Using Oracle
Enterprise Manager Fusion Middleware Control (continued)
Oracle SOA Suite 11g: Essential Concepts A - 53

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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 6-1: Testing an SOA Composite by Using Oracle
Enterprise Manager Fusion Middleware Control (continued)
Oracle SOA Suite 11g: Essential Concepts A - 54

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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 6-1: Testing an SOA Composite by Using Oracle
Enterprise Manager Fusion Middleware Control (continued)
Oracle SOA Suite 11g: Essential Concepts A - 55

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 VALI D value (credit card status).

3) Execute the test case again with a different credit card number (1234- 1234- 1234-
0000), and verify that the result field shows the I NVALI D credit card status.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 56
Practice 6-2: Viewing the SOA Composite Instance Details
In this practice, you view the CreditCardValidation SOA composite instance details and
the composites flow of message through various composite and component instances.
1) View the CreditCardValidation SOA composites 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
composites 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.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 6-2: Viewing the SOA Composite Instance Details
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 57
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 6-2: Viewing the SOA Composite Instance Details
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 58




O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 59
Practices for Lesson 7

The goal of the practices in this lesson is to create the r out ePO Mediator service
component. The client that interacts with the SOA composite makes a new purchase
order request to the POProcessingComposite by using the r ecei vePO Web service
interface. The r out ePO Mediator routes the order request to a text file (or der _n. t xt )
by using the Wr i t eAppr oval Resul t s 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.



O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 60
Practice 7-1: Creating a Mediator to Route Order Request
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 Appl i cat i on_07. j ws workspace in J Developer.
a) From the File menu, select Open.
b) In the Open dialog box, navigate to the D: \ l abs\ Appl i cat i on_07 directory.
Select Appl i cat i on_07. j ws and click the Open button.
c) In the Application Navigator pane, expand POProcessingComposite >SOA
Content and double-click composi t e. 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: r out ePO
Template: Define Interface Later
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 7-1: Creating a Mediator to Route Order Request
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 61

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 Wr i t eAppr oval Resul t s. Use the following details
to accomplish this task:
Step Screen/Page
Description
Choices or Values
a. Welcome Click Next.
b. Service Name

Service Name: Wr i t eAppr oval Resul t s
Click Next.
c. Adapter
Interface
Accept the default option.
Click Next.
d. Operation

Operation Type: Write File
Operation Name: Wr i t e
Click Next.
e. File
Configuration

Directory for Outgoing Files (physical path):
D: \ l abs\ Appl i cat i on_Fi l es\ t est Resul t s
File Naming Convention: or der _%SEQ%. t xt
Click Next.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 7-1: Creating a Mediator to Route Order Request
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 62
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: \ l abs\ Appl i cat i on_Fi l es\
schemas and select Or der . xsd.
Click OK.

j. Import
Schema File

Click OK.
k. Localize Files Click OK.
l. Type Chooser Expand Project Schema Files >Or der . xsd.
Select Order.
Click OK.

m. Messages

Click Next.
n. Finish Click Finish.


b)

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 7-1: Creating a Mediator to Route Order Request
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 63
c)


d)


e)

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 7-1: Creating a Mediator to Route Order Request
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 64

f)


g)


h)


i)

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 7-1: Creating a Mediator to Route Order Request
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 65

j)


k)


l)



O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 7-1: Creating a Mediator to Route Order Request
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 66

m)



4) Wire the components as shown in the following screenshot:


O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 67
Practice 7-2: Adding Routing Rules to the SOA Composite
In this practice, you create the mapping between the inbound purchase order and the
order format that you log to the or der _n. t xt 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
Wr i t eAppr oval Resul t s: : Wr i t e target service operation).

c) In the Request Transformation Map dialog box, select the Create New Mapper
File option. Enter r ecei veOr der _To_wr i t eOr der . xsl in the Create New
Mapper File text field, and click OK.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 7-2: Adding Routing Rules to the SOA Composite
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 68
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.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 7-2: Adding Routing Rules to the SOA Composite
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 69
iii) Select D: \ l abs\ Appl i cat i on_Fi l es\ di ct i onar y\
po_t o_or der _di ct i onar y. 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:

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 7-2: Adding Routing Rules to the SOA Composite
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 70
g) Save and close both the mapping and the Mediator editor to return to the
composite.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 71
Practice 7-3: Deploying and Testing the SOA Composite
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 J Developer, 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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 7-3: Deploying and Testing the SOA Composite
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 72
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.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 7-3: Deploying and Testing the SOA Composite
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 73
v) Use any text editor to open the po- smal l - Headset . t xt text file at
D: \ l abs\ Appl i cat i on_Fi l es\ t est 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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 7-3: Deploying and Testing the SOA Composite
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 74
i) In the Test Web Service page, on the Response tabbed subpage, verify that the
Test Status is Passed.
Note: The Test Web Servicepage 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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 7-3: Deploying and Testing the SOA Composite
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 75

v) You can also verify the result by opening the text file that has been created by
the File adapter service at the
D: \ l abs\ Appl i cat i on_Fi l es\ t est Resul t s 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 Appl i cat i on_07. j ws workspace and remove it from the J Developer
IDE.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 76
Practices for Lesson 8

The goal of the practices in this lesson is to add and create the appr oveLar geOr der
BPEL process in the POProcessingComposite. The BPEL process validates the clients
credit card number by invoking an external Web service
(Cr edi t Car dVal i dat i onSer vi ce). 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 r out ePO Mediator component) to log the order
data.

The r out ePO 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 appr oveLar geOr der 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 r out ePO 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.

























O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 77
The following diagram illustrates the tasks to be performed in this practice set.





BPEL Process
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 78
Practice 8-1: Creating an Order Approval BPEL Process
In this practice, you create the appr oveLar geOr der 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 Appl i cat i on_08. j ws workspace in J Developer.
a) From the File menu, select Open.
b) In the Open dialog box, navigate to the D: \ l abs\ Appl i cat i on_08 directory.
Select Appl i cat i on_08. j ws and click the Open button.
c) In the Application Navigator pane, expand the POProcessingComposite >SOA
Content folder and double-click composi t e. 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.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 8-1: Creating an Order Approval BPEL Process
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 79
c) In the Create BPEL Process dialog box, specify the following options and click
OK.
Name: appr oveLar geOr der
Template: Asynchronous BPEL Process
Service Name: appr ovel ar geor der _cl i ent
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 appr oveLar geOr der BPEL process and the get Cr edi t Car dSt at us
service in the SOA Composite editor, as shown in the following screenshot.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 8-1: Creating an Order Approval BPEL Process
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 80
4) Design the appr oveLar geOr der BPEL approval process.
a) Double-click the appr oveLar geOr der BPEL component in the SOA
Composite editor to open the BPEL editor.

Note: Notice that the get Cr edi t Car dSt at us 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 get Cr edi t Car dSt at us 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 r ecei veI nput activity.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 8-1: Creating an Order Approval BPEL Process
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 81
ii) Drag the wire from the Invoke activity to the get Cr edi t Car dSt at us.
Note: This tells your BPEL process to invoke that service.

iii) In the Edit Invoke dialog box, specify the following and click OK.
Name: i nvokeCCSt at usSer vi ce
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 8-1: Creating an Order Approval BPEL Process
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 82

d) Add an Assign activity to assign data to a variable.
Note: You created the variables that are used when interacting with the
get Cr edi t Car dSt at us 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 POPr ocessi ng
service to the get Cr edi t Car dSt at us service.
i) Drag an Assign activity (from the Component palette) above the
i nvokeCCSt at usSer vi ce Invoke activity in the BPEL editor.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 8-1: Creating an Order Approval BPEL Process
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 83
ii) Double-click the Assign activity to edit it.
iii) Click the General tab and change the name to assi gnCCNumber .

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:

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 8-1: Creating an Order Approval BPEL Process
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 84
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 8-1: Creating an Order Approval BPEL Process
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 85

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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 8-1: Creating an Order Approval BPEL Process
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 86
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
get Cr edi t Car dSt at us service.
i) Drag a Switch activity below the i nvokeCCSt at usSer vi ce Invokeactivity.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 8-1: Creating an Order Approval BPEL Process
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 87

ii) Double-click the Switch activitys name (which is probably something like
Swi t ch_1) just below the icon and rename it Eval uat eCCSt at us.
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.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 8-1: Creating an Order Approval BPEL Process
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 88
f) Add a condition in the Switch activity to compare the data returned from the
get Cr edi t Car dSt at us 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).
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 8-1: Creating an Order Approval BPEL Process
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 89

v) In the Expression field, put the cursor at the end and add: =' VALI D'

vi) Click OK.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 8-1: Creating an Order Approval BPEL Process
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 90
vii) Click outside the Condition Expression pop-up window to close it.
g) Add an Assign activity in the <case>part of the Switch activity.
Note: If the condition is true, then BPEL executes any activities in the <case>
part of the switch. If not, any activities in the <otherwise>section are executed.
i) Drag an Assign activity (from the Component palette) into the <case>section
of the Switch activity.

ii) Double-click the Assign activity to edit it.
iii) Click the General tab and change the name to assi gnAppr oval .
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 ' appr oved' .
(2) In the To section: Select Variables >Process >Variables >
outputVariable >payload >Order >status.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 8-1: Creating an Order Approval BPEL Process
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 91

vi) Click OK.
vii) Click OK to return to the BPEL process.
h) Add an Assign activity in the <otherwise>part of the switch activity.
i) Drag an Assign activity (from the Component palette) into the <otherwise>
section of the Switch activity.
ii) Double-click the Assign activity to edit it.
iii) Click the General tab and change the name to assi gnI nval i dCC.
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 ' i nval i dCr edi t Car d' .
(2) In the To section: Select Variables >Process >Variables >
outputVariable >payload >Order >status.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 8-1: Creating an Order Approval BPEL Process
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 92

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.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 93
Practice 8-2: Modifying the Mediator in the SOA Composite
In this practice, you modify the r out ePO mediator component to route requests to both
the Wr i t eAppr oval Resul t s service and the appr oveLar geOr der 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 r out ePO Mediator to the appr oveLar geOr der BPEL process in the SOA
Composite editor.

2) Double-click the r out ePO 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 theInvoke
Expression Builder icon (the filter icon) for the
Wr i t eAppr oval Resul t s: : Wr i t e target service operation.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 8-2: Modifying the Mediator in the SOA Composite
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 94

b) In the Expression Builder dialog box, build the following expression:
( $i n. r equest / i np1: Pur chaseOr der / i np1: quant i t y) < 10
Caution: Do not copy-paste this text into the expression, but use the Variables
frame to select the variables. The namespaces (such as, i np1: ) 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.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 8-2: Modifying the Mediator in the SOA Composite
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 95
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 theInvoke
Expression Builder icon (the filter icon) for the
appr ovel ar geor der / cl i ent : : pr ocess target service operation.
b) In the Expression Builder dialog box, build the following expression:
( $i n. r equest / i np1: Pur chaseOr der / i np1: quant i t y) >= 10
Caution: Do not copy-paste this text into the expression, but use the Variables
frame to select the variables. The namespaces (such as, i np1: ) 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 <<Target Operation>>field in the Callback section.

b) In the Target Type dialog box, click the Servicebutton.
c) In the Target Services dialog box, select POProcessing >References >
WriteApprovalResults >Write.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 8-2: Modifying the Mediator in the SOA Composite
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 96

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 appr ovel ar geor der / cl i ent : : pr ocess target
service operation).

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 8-2: Modifying the Mediator in the SOA Composite
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 97
b) In the Request Transformation Map dialog box, select the Create New Mapper
File option. Enter r ecei veOr der _To_appr oveOr der . xsl in the respective
text field, and click OK.
c) In the XSLT Mapper pane, drag Pur chaseOr der 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
Wr i t eAppr oval Resul t s: : Wr i t e target service operation).
b) In the Request Transformation Map dialog box, select the Create New Mapper
File option. Enter appr oveOr der _To_wr i t eOr der . 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:
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 8-2: Modifying the Mediator in the SOA Composite
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 98


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.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 99
Practice 8-3: Deploying and Testing the SOA Composite
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 appr oveLar geOr der BPEL process.
1) Deploy the POProcessingComposite SOA composite to Oracle SOA Suite 11g.
a) In the Application Navigator menu of J Developer, 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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 8-3: Deploying and Testing the SOA Composite
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 100
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- l ar ge- i Pod. t xt ) at
D: \ l abs\ Appl i cat i on_Fi l es\ t est 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 Servicepage does not show any response because this is
a one-way invocation with no reply or callback.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 8-3: Deploying and Testing the SOA Composite
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 101
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 (or der _n. t xt )
that has been created by the File adapter service at the
D: \ l abs\ Appl i cat i on_Fi l es\ t est Resul t s 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: \ l abs\ Appl i cat i on_Fi l es\ t est Resul t s directory. The
invalidCreditCard status is the result of the <swi t ch> statement in the
appr oveLar geOr der BPEL process.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 8-3: Deploying and Testing the SOA Composite
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 102

5) Close the Web browser window.
6) Close the Appl i cat i on_08. j ws workspace and remove it from the J Developer
IDE.



O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 103
Practices for Lesson 9

The goal of the practices in this lesson is to add and configure a Human Task component
in the POProcessingComposite SOA composite. The Manual POAppr oval Human Task
is accessed by the appr oveLar geOr der BPEL process for manually approving large
orders that have a valid credit card status.

When the Human Task is added to the <case>branch of the Eval uat eCCSt at us
Switch activity, a t askSwi t ch activity is also added at the same time as the Human
Task. The t askSwi t ch is configured with an <otherwise>branch and a <case>branch
for each outcome configured in the Human Task. In this practice, you add activities for
each branch in the t askSwi t ch.

In addition, by using J Developer 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 appr oveLar geOr der BPEL
process.
3. Deploy and test the SOA composite in Oracle SOA Suite 11g.

















O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 104

The following diagram illustrates the tasks to perform in this practice set.

BPEL Process
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 105
Practice 9-1: Creating a Human Task for Manual Order Approval
In this practice, you create and configure the Manual POAppr oval Human Task
component in the POProcessingComposite SOA composite.
1) Open the Appl i cat i on_09. j ws workspace in J Developer.
a) From the File menu, select Open.
b) In the Open dialog box, navigate to the D: \ l abs\ Appl i cat i on_09 directory.
Select Appl i cat i on_09. j ws and click the Open button.
c) In the Application Navigator pane, expand the POProcessingComposite >SOA
Content folder and double-click composi t e. 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.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 9-1: Creating a Human Task for Manual Order Approval
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 106
c) In the Create Human Task dialog box, specify the following options and click
OK.
Name: Manual POAppr oval
Namespace: Leave as default

3) Wire the appr oveLar geOr der BPEL process to the Manual POAppr oval Human
Task component.


4) Create the task definitions for the Manual POAppr oval Human Task component.
a) Double-click the Manual POAppr oval Human Task component in the SOA
Composite editor to open the Task Definition editor.
b) In the Task Definition editor, specify the following settings:
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 9-1: Creating a Human Task for Manual Order Approval
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 107
i) Title: Using the expression builder button on the right, enter Appr ove
Lar ge Or der and click OK. You see <%' Appr ove Lar ge Or der ' %>
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.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 9-1: Creating a Human Task for Manual Order Approval
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 108
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 <no
participant>box in the diagram.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 9-1: Creating a Human Task for Manual Order Approval
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 109

ii) In the Add Participant Type dialog box, specify the following:
Type: Single
Label: Lar ge Or der Appr over
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 webl ogi c in the Value field.
v) Click OK.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 9-1: Creating a Human Task for Manual Order Approval
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 110

5) Save and close the Task Definition editor and return to the SOA Composite editor.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 111
Practice 9-2: Accessing the Human Task from the BPEL Process
In this practice, you add and configure a Human Task activity in the
appr oveLar geOr der BPEL process. In the Human Task activity, you select the
Manual POAppr oval 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 appr oveLar geOr der BPEL process
to open the BPEL designer.
2) Add a Human Task activity into the <case>branch of the Eval uat eCCSt at us
Switch activity.
a) Drag a Human Task activity from the Component palette into the <case>branch
of the Eval uat eCCSt at us Switch activity, below the assi gnAppr oval
Assign activity.

b) In the Create Human Task dialog box, select Manual POAppr oval from the Task
Definition drop-down list.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 9-2: Accessing the Human Task from the BPEL Process
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 112

c) In the Create Human Task dialog box, enter Appr ove Lar ge Or der 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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 9-2: Accessing the Human Task from the BPEL Process
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 113

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 <case Task outcome is APPROVE>part of the
t askSwi t ch 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 (t askSwi t ch). 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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 9-2: Accessing the Human Task from the BPEL Process
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 114
a) Drag the assi gnAppr oval Assign activity below the CopyPayl oadFr omTask
Assign activity in the <case Task outcome is APPROVE>branch of the
t askSwi t ch Switch activity.

Note: The approved case was already created earlier while constructing the
appr oveLar geOr der BPEL process. Therefore, you can reuse that.
4) Specify the message in the <case Task outcome is REJ ECT>part of the t askSwi t ch
Switch activity (if the request is rejected).
a) Double-click the CopyPayl oadFr omTask Assign activity in the <case Task
outcome is REJ ECT>branch.
b) Click the green [+] icon and select Copy Operation to open the Create Copy
Operation dialog box, and specify the following details:
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 9-2: Accessing the Human Task from the BPEL Process
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 115

i) In the From section: Change the Type list to Expression and in the Expression
field, enter ' r ej ect ed' .
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 9-2: Accessing the Human Task from the BPEL Process
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 116

5) Specify the message in the <otherwise>part of the t askSwi t ch Switch activity (if
the request is expired).
a) Double-click the CopyPayl oadFr omTask Assign activity in the <otherwise>
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 ' expi r ed' .
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 9-2: Accessing the Human Task from the BPEL Process
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 117
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 J SF 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 Manual POAppr oval _1 Human Task
activity and select the Auto-Generate Task Formoption from the shortcut menu.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 9-2: Accessing the Human Task from the BPEL Process
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 118

b) Enter Appr oveTaskDet ai l in the project name field for the task form and click
OK. J Developer 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 (t askDet ai l s1. j spx) open.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 9-2: Accessing the Human Task from the BPEL Process
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 119

c) Save all and close the task form and task flow dialog box.
7) Save and close the BPEL process.


O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 120
Practice 9-3: Deploying and Testing the SOA Composite
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
appr oveLar geOr der 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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 9-3: Deploying and Testing the SOA Composite
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 121

2) Deploy the POProcessingComposite SOA composite to Oracle SOA Suite 11g.
a) In the Application Navigator menu of J Developer, 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- l ar ge- i Pod. t xt ) at
D: \ l abs\ Appl i cat i on_Fi l es\ t est 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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 9-3: Deploying and Testing the SOA Composite
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 122
viii) In the Test Web Service page, on the Response tabbed subpage, verify that the
Test Status is passed.
Note: The Test Web Servicepage 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:
ht t p: / / l ocal host : 8001/ i nt egr at i on/ wor kl i st app.
ii) Enter the user name as webl ogi c and the password as wel come1. Click
Login.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 9-3: Deploying and Testing the SOA Composite
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 123
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 9-3: Deploying and Testing the SOA Composite
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 124
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: \ l abs\ Appl i cat i on_Fi l es\ t est Resul t s directory.
Hint: Check the date and time of the text file to view the most recent file created by
the file adapter.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 9-3: Deploying and Testing the SOA Composite
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 125
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 Appl i cat i on_09. j ws workspace and remove it from the J Developer
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.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 126
Practices for Lesson 10

The goal of the practices in this lesson is to add and configure a Business Rule
component in the POProcessingComposite SOA composite. The Manual Appr oval
Business Rule is accessed by the appr oveLar geOr der 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 appr oveLar geOr der
BPEL process.
3. Deploy and test the SOA composite in Oracle SOA Suite 11g.






























O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 127


The following diagram illustrates the tasks to perform in this practice set.
















BPEL Process

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 128
Practice 10-1: Adding a Business Rule to
POProcessingComposite
In this practice, you create and configure the Manual Appr oval 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 Appl i cat i on_10. j ws workspace in J Developer.
a) From the File menu, select Open.
b) In the Open dialog box, navigate to the D: \ l abs\ Appl i cat i on_10 directory.
Select Appl i cat i on_10. j ws and click the Open button.
c) In the Application Navigator pane, expand the POProcessingComposite >SOA
Content folder and double-click composi t e. 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: Manual Appr oval
Package: popr ocessi ngcomposi t e
ii) Click the green [+] list and select Input.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 10-1: Adding a Business Rule to
POProcessingComposite (continued)
Oracle SOA Suite 11g: Essential Concepts A - 129

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: \ l abs\ Appl i cat i on_Fi l es\ schemas\
Or der Appr oval . 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.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 10-1: Adding a Business Rule to
POProcessingComposite (continued)
Oracle SOA Suite 11g: Essential Concepts A - 130
v) Click the green [+] list and select Output.
vi) In the Type Chooser dialog box, expand and select Project Schema Files >
OrderApproval.xsd >appr oval 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.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 10-1: Adding a Business Rule to
POProcessingComposite (continued)
Oracle SOA Suite 11g: Essential Concepts A - 131
c) Click <insert test>, and then select the left <operand>in the IF statement.
d) Select the or der Val ue. pr i ce object.

e) Select the operator ( ==) and change it to ( >=) in the IF statement.
f) Select the right <operand>in the IF statement, and change it to 5000. This
completes the test.

g) The THEN clause configures the return result. Click <insert action>and select
assert new.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 10-1: Adding a Business Rule to
POProcessingComposite (continued)
Oracle SOA Suite 11g: Essential Concepts A - 132

h) Click <target>and select appr oval .

i) Select the <add property>box and a dialog box opens to allow you to set the
property values. Set the value of appr oval Requi r ed to t r ue by double-
clicking 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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 10-1: Adding a Business Rule to
POProcessingComposite (continued)
Oracle SOA Suite 11g: Essential Concepts A - 133
k) Ruleset_1 should match the following screenshot:

l) Save and close the Rules editor.






O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 134
Practice 10-2: Accessing the Business Rule from the BPEL
Process
In this practice, you add and configure a Business Rule activity in the
appr oveLar geOr der BPEL process. In the Business Rule activity, you select the
Manual Appr oval 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 appr oveLar geOr der 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 J Developer, expand Variables >Process and select the
Var i abl es node.

b) Click the green [+] icon to add a variable named appr oval Requi r ed. Select the
Element type option, and browse and select the appr oval element from the
Or der Appr oval . xsd schema. Click OK.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 10-2: Accessing the Business Rule from the BPEL
Process (continued)
Oracle SOA Suite 11g: Essential Concepts A - 135

3) Add a Business Rule activity into the BPEL workflow.
a) Drag a Business Rule activity from the Component palette into the <case>branch
of the Eval uat eCCSt at us Switch activity, just before the
Manual POAppr oval _1 Human Task activity.

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 10-2: Accessing the Business Rule from the BPEL
Process (continued)
Oracle SOA Suite 11g: Essential Concepts A - 136
b) In the Business Rule dialog box:
i) Specify the following options:
Name: Appr oval Rul e
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: get Var i abl eDat a( ' i nput Var i abl e' , ' payl oad' , ' / ns2: Or de
r / ns2: pr i ce' ) *
bpws: get Var i abl eDat a( ' i nput Var i abl e' , ' payl oad' , ' / ns2: Or de
r / ns2: qt y' )
To: Select the following variable:
Variables >com_globalcompany. >orderValue >price

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 10-2: Accessing the Business Rule from the BPEL
Process (continued)
Oracle SOA Suite 11g: Essential Concepts A - 137
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

O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 10-2: Accessing the Business Rule from the BPEL
Process (continued)
Oracle SOA Suite 11g: Essential Concepts A - 138
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 Appr oval Rul e
Rule activity.

b) Expand the Switch activity.
c) Drag the Manual POAppr oval _1 Human Task activity into the <case>block for
this Switch so that it only executes when the test case is true. There is the
t askSwi t ch Switch activity that follows the Manual POAppr oval _1 Human
Task for processing the Human Task results (which sets the status to approved or
rejected accordingly). Move the t askSwi t ch Switch activity into the new
Switch activitys <case>block.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 10-2: Accessing the Business Rule from the BPEL
Process (continued)
Oracle SOA Suite 11g: Essential Concepts A - 139


O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 10-2: Accessing the Business Rule from the BPEL
Process (continued)
Oracle SOA Suite 11g: Essential Concepts A - 140
d) Use the Expression Builder to set the test case expression in the case block:
bpws: get Var i abl eDat a( ' appr oval Requi r ed' , ' / ns4: appr oval / ns4:
appr oval Requi r ed' ) = ' t r ue'


O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 10-2: Accessing the Business Rule from the BPEL
Process (continued)
Oracle SOA Suite 11g: Essential Concepts A - 141
e) Drag an Assign activity from the Component palette to the <otherwise>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 aut oAppr oved.
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 ' appr oved' .
ii) In the To section, select Variables >Process >Variables >outputVariable >
payload >Order >status.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 10-2: Accessing the Business Rule from the BPEL
Process (continued)
Oracle SOA Suite 11g: Essential Concepts A - 142

j) Click OK.
k) Click OK to return to the BPEL process.
5) The complete BPEL process looks like the following:
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 10-2: Accessing the Business Rule from the BPEL
Process (continued)
Oracle SOA Suite 11g: Essential Concepts A - 143


O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 144
Practice 10-3: Deploying and Testing the SOA Composite
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 J Developer, 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- smal l - Headset . t xt ) at
D: \ l abs\ Appl i cat i on_Fi l es\ t est 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 Servicepage 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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 10-3: Deploying and Testing the SOA Composite
(continued)
Oracle SOA Suite 11g: Essential Concepts A - 145
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: \ l abs\ Appl i cat i on_Fi l es\ t est Resul t s 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.


O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 146
Practices for Lesson 11

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_secur i t y_pol i cy to the r ecei vePO Web service.
2. Attach l og_pol i cy to the r ecei vePO service endpoint.


O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 147
Practice 11-1: Attach username_token_security_policy to
the receivePO Service Endpoint
In this practice/task, you will attach the user name_t oken_secur i t y_pol i cy to the
r ecei vePO 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 Choices or Values
a. Start Oracle Enterprise
Manager Fusion
Middleware Control
In your browser, type the following URL:
ht t p: / / l ocal host : 7001/ em
Specify the username and password:
Username: webl ogi c
Password: wel come1
b. Policies Page Click so-infra under the SOA folder.
Select the POProcessing composite by
clicking it.
Click the Policies tab.
c. Attaching Policy Click Attach To/Detach From.
Select r ecei vePO.
d. Select the Policy Under available policies, select
oracle/wss_username_token_service_policy.
Click the Attach button.
e. Validation Click the Validate button. If a successful
message appears, click OK.
f. Test - Authentication 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: webl ogi c
Password: wel come1

g. Test Input Arguments Under Input Arguments, select XML view.
Copy the contents from the po- smal l -
Headset . t xt file (you can find this file
under
D: \ l abs\ Appl i cat i on_Fi l es\ t est ) 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.




O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 11-1: Attach username_token_security_policy to
the receivePO Service Endpoint (continued)
Oracle SOA Suite 11g: Essential Concepts A - 148


a)



b)






O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 11-1: Attach username_token_security_policy to
the receivePO Service Endpoint (continued)
Oracle SOA Suite 11g: Essential Concepts A - 149




c)



d)






O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 11-1: Attach username_token_security_policy to
the receivePO Service Endpoint (continued)
Oracle SOA Suite 11g: Essential Concepts A - 150





e)



f)








O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 11-1: Attach username_token_security_policy to
the receivePO Service Endpoint (continued)
Oracle SOA Suite 11g: Essential Concepts A - 151



g)


h)


O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Oracle SOA Suite 11g: Essential Concepts A - 152
Practice 11-2: Attach log_policy to the receivePO Service
Endpoint
In this practice/task, you attach l og_pol i cy to the r ecei vePO 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 Choices or Values
a. Start Oracle Enterprise
Manager Fusion Middleware
Control
In your browser, type the following URL:
ht t p: / / l ocal host : 7001/ em
Specify the username and password:
Username: webl ogi c
Password: wel come1
b. Policies Page Click soa-infra under the SOA folder.
Select the POProcessing composite by
clicking it.
Click the Policies tab.
c. Attaching Policy Click Attach To/Detach From.
Select r ecei vePO.
d. Select the Policy Under Attached Policies, select
or acl e/ l og_pol i cy.
Click the Attach button.
e. Validation Click the Validate button. If a
successful message appears, click OK.
f. Test - Authentication 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: webl ogi c
Password: wel come1
g. Test Input Arguments Under Input Arguments, select the XML
view.
Copy the contents from the
po- smal l - Headset . t xt file (you can
find this file under
D: \ l abs\ Appl i cat i on_Fi l es\ t est )
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.




O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 11-2: Attach log_policy to the receivePO Service
Endpoint (continued)
Oracle SOA Suite 11g: Essential Concepts A - 153
a)


b)









O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 11-2: Attach log_policy to the receivePO Service
Endpoint (continued)
Oracle SOA Suite 11g: Essential Concepts A - 154

c)


d)











O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 11-2: Attach log_policy to the receivePO Service
Endpoint (continued)
Oracle SOA Suite 11g: Essential Concepts A - 155


e)



f)












O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Practice 11-2: Attach log_policy to the receivePO Service
Endpoint (continued)
Oracle SOA Suite 11g: Essential Concepts A - 156

g)


h)



O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Copyright 2009, Oracle. All rights reserved.
Introduction to Linux
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts B - 2
Copyright 2009, Oracle. All rights reserved.
What Is 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.
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
purposefor 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).
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts B - 3
Copyright 2009, Oracle. All rights reserved.
What Is Oracles Strategy for 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
What Is Oracles 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 Oracles 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. Oracles delivery of a complete solution, including direct technical
support of the operating system, is critical to the customers 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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts B - 4
Copyright 2009, Oracle. All rights reserved.
File System and Basic Directory Structure
In Linux, there are directories, subdirectories, and filesbut
everything is just a file.
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts B - 5
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts B - 6
Copyright 2009, Oracle. All rights reserved.
Shell Commands
Environment-based commands
Information-based commands
File system commands
Common vi editing commands
Common FTP communication commands
Archive utilities
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
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts B - 7
Copyright 2009, Oracle. All rights reserved.
Environment-Based Commands
date
df
du
echo
env
exit
export
free
ifconfig
kill
login
logout
ps
su
top
uname
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
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts B - 8
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)
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts B - 9
Copyright 2009, Oracle. All rights reserved.
Information-Based Commands
>
>>
|
cat
diff
file
find
grep
info
less
ls
man
more
pwd
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 typefor example, text or executable)
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts B - 10
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)
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts B - 11
Copyright 2009, Oracle. All rights reserved.
File System Commands
cd
chmod
chown
cp
mkdir
mv
rm
rmdir
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 users access positionally, through the letters ugoa
where (u) is the user who owns it, (g) is for other users in the files group, (o) is for
other users not in the files group, or (a) for all users)
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts B - 12
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)
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts B - 13
Copyright 2009, Oracle. All rights reserved.
Common vi Editing Commands
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.
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts B - 14
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts B - 15
Copyright 2009, Oracle. All rights reserved.
Common FTP Communication Commands
To shut off or turn on prompting
prompt
To put multiple WAR files on FTP site
mput *war
To get multiple JAR files from FTP site
mget *jar
To put a file on the FTP site
put filename
To get a file from the FTP site
get filename
type ascii
type binary
ftp hostname.com
Command
To connect to hostname.com
To set the type for ASCII files
To set the type for binary files
Description
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts B - 16
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts B - 17
Copyright 2009, Oracle. All rights reserved.
Archive Utilities
The following archive utilities are available for Linux:
tar
gzip and gunzip
bzip2 and bunzip2
zip and unzip
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
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts B - 18
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
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
Katzs 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
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts B - 19
Copyright 2009, Oracle. All rights reserved.
Shortcuts and Tips
Case-sensitivity
The clear utility
Shift + Page Up/Page Down
Tab
Color coding
The touch utility
Web sites
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
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Copyright 2009, Oracle. All rights reserved.
Perform Common Tasks with Oracle
JDeveloper
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts C - 2
Copyright 2009, Oracle. All rights reserved.
Objectives
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
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts C - 3
Copyright 2009, Oracle. All rights reserved.
Create a Database Connection
Step 1 of 3: Type
Step 2 of 3: Create
Step 3 of 3: View
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts C - 4
Copyright 2009, Oracle. All rights reserved.
Create an Application Server Connection
Step 1 of 7
Step 2 of 7: Type
Step 3 of 7: Authentication
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts C - 5
Copyright 2009, Oracle. All rights reserved.
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
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts C - 6
Copyright 2009, Oracle. All rights reserved.
Create an Application
Step 1 of 3
Step 2 of 3
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts C - 7
Copyright 2009, Oracle. All rights reserved.
Create an Application
Step 3 of 3
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts C - 8
Copyright 2009, Oracle. All rights reserved.
Create an Empty Project
1
2
3
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts C - 9
Copyright 2009, Oracle. All rights reserved.
Create an SOA Project
1
2
3
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts C - 10
Copyright 2009, Oracle. All rights reserved.
Create a Project from Existing Sources
1
2
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts C - 11
Copyright 2009, Oracle. All rights reserved.
Create a Project from Existing Sources
3
4
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts C - 12
Copyright 2009, Oracle. All rights reserved.
Create a Project from Existing Sources
5
Create a Project from Existing Sources (continued)
The wizard creates the project and the selected files.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts C - 13
Copyright 2009, Oracle. All rights reserved.
Deploy an SOA Composite Application
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts C - 14
Copyright 2009, Oracle. All rights reserved.
Deploy an SOA Composite Application

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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts C - 15
Copyright 2009, Oracle. All rights reserved.
Summary
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
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Copyright 2009, Oracle. All rights reserved.
SOA Adoption Planning Principles
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts D - 2
Copyright 2009, Oracle. All rights reserved.
Objectives
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
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts D - 3
Copyright 2009, Oracle. All rights reserved.
SOA Adoption
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.
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts D - 4
Copyright 2009, Oracle. All rights reserved.
SOA Adoption Planning Activities
Getting and sustaining commitment
Driving measurable adoption through the SOA program
Leveraging the technology
Defining a phased change approach
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
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts D - 5
Copyright 2009, Oracle. All rights reserved.
SOA Adoption Planning Activities: Completing
the Stakeholder Community
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
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts D - 6
Copyright 2009, Oracle. All rights reserved.
SOA Adoption Planning Activities: Moving
Through the Change Curve
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
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts D - 7
Copyright 2009, Oracle. All rights reserved.
SOA Adoption Planning Activities: Establishing
"Line-of-Sight" Goals
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
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
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts D - 8
Copyright 2009, Oracle. All rights reserved.
SOA Adoption Planning Activities: Establish a
Milestone Delivery Plan
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
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
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts D - 9
Copyright 2009, Oracle. All rights reserved.
SOA Adoption Planning Activities: Usage of
Metrics
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
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts D - 10
Copyright 2009, Oracle. All rights reserved.
SOA Adoption Planning Activities: Enabling
Business Innovation
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
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts D - 11
Copyright 2009, Oracle. All rights reserved.
SOA Adoption Planning Activities: Usage of Tools
and Processes
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
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts D - 12
Copyright 2009, Oracle. All rights reserved.
The Need for an SOA Reference Architecture
An SOA Reference Architecture defines the target
architecture and the principles to be used by an
organizations 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).
The Need for an SOA Reference Architecture
The SOA Reference Architecture provides a high-level view to a desired outcome on a three-
year 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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts D - 13
Copyright 2009, Oracle. All rights reserved.
Developing the 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
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
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts D - 14
Copyright 2009, Oracle. All rights reserved.
Developing the SOA Reference Architecture:
Align IT with Business
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
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts D - 15
Copyright 2009, Oracle. All rights reserved.
Developing the SOA Reference Architecture:
Develop a Baseline
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
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts D - 16
Copyright 2009, Oracle. All rights reserved.
Developing the SOA Reference Architecture:
Create SOA Reference Architecture
The goal of this stage is to:
Leverage collective thought leadership to define your
organizations future SOA vision
Document the vision as your SOA Reference Architecture
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 enterprises 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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts D - 17
Copyright 2009, Oracle. All rights reserved.
Developing the SOA Reference Architecture:
Create SOA Infrastructure Roadmap
The goal at this stage is to:
Provide an incremental plan for achieving the future vision
Synergize efforts with current and future projects
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts D - 18
Copyright 2009, Oracle. All rights reserved.
SOA Governance Model
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
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts D - 19
Copyright 2009, Oracle. All rights reserved.
Example of an 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 Requirements
Service Development
Team
Service Development
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts D - 20
Copyright 2009, Oracle. All rights reserved.
Summary
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
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Glossary
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 J ava 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
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts Glossary - 2
enterprise. EAI may involve developing a total new view of an enterprise's
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
SOAs request-response and Event-Driven Architectures (EDA) event publish-
subscribe paradigms.
EJB: Enterprise J ava Bean. Defines a J ava API for server-side enterprise components
that execute within a J 2EE-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: J ava Applications Manager. Enables launching J ava Applications.
JAXB: J ava Architecture for XML binding. Provides a convenient way to process XML
content using J ava objects by binding its XML schema to J ava Representation.
JCA: J ava Connector Architecture. A J 2EE-based technology standard for connecting
application servers and enterprise information systems (EIS).
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts Glossary - 3
JMS: J ava Messaging Services. A J ava API for interacting with messaging-based
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.
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts Glossary - 4
RFID: Radio Frequency Identification
RMI: Remote Method Invocation. A RPC protocol published for accessing J ava 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 J ava
platform that unifies data programming across data source types (relational
databases, entity EJ B components, XML sources, Web services, J CA, J SP),
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
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts Glossary - 5
response messages before sending them over a network. SOAP messages are
independent of any operating system or protocol and can be transported using a
variety of protocols, including HTTP and J MS.
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 J ava 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
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D
Oracle SOA Suite 11g: Essential Concepts Glossary - 6
used to verify that the content of an XML instance document adheres to a
particular schema.
XSLT: Extensible Stylesheet Language Transformations (XSLT) is the language used in
XSL style sheets to transform XML documents into other XML documents
O
r
a
c
l
e

U
n
i
v
e
r
s
i
t
y

a
n
d

I
n

M
o
t
i
o
n

S
e
r
v
i
c
i
o
s

S
.
A
.

u
s
e

o
n
l
y
T
H
E
S
E

e
K
I
T

M
A
T
E
R
I
A
L
S

A
R
E

F
O
R

Y
O
U
R

U
S
E

I
N

T
H
I
S

C
L
A
S
S
R
O
O
M

O
N
L
Y
.


C
O
P
Y
I
N
G

e
K
I
T

M
A
T
E
R
I
A
L
S

F
R
O
M

T
H
I
S

C
O
M
P
U
T
E
R

I
S

S
T
R
I
C
T
L
Y

P
R
O
H
I
B
I
T
E
D

Potrebbero piacerti anche