D93509GC10 Ag
D93509GC10 Ag
D93509GC10 Ag
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
Oracle SOA Suite 12c: New
Features and Capabilities
Activity Guide
D93509GC10
Edition 1.0 | March 2016 | D95084
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.
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
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.
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:
Practice 2-1: Starting JDeveloper and Configuring the Integrated WebLogic Server (35 minutes) ................2-3
Practice 2-2: Installing and Configuring a Stand-Alone Domain (Optional) (25 minutes) ...............................2-8
Practices for Lesson 3: Getting Started with Oracle SOA Suite 12c ...........................................................3-1
Practices for Lesson 3: Getting Familiar with Oracle SOA Suite 12c .............................................................3-2
Practice 3-1: Deploying and Testing a SOA Composite (Review) (15 minutes) .............................................3-3
Practice 3-2: Migrating a SOA 11g Composite to 12c with JDeveloper (15 minutes) .....................................3-9
Practice 3-3: Migrating a SOA 11g Composite to 12c with EM FMWC (10 minutes) .....................................3-12
Practice 3-4: Viewing and Testing the New Features in EM FMWC (25 minutes).........................................3-13
a
has
Practices for Lesson 4: JDeveloper: New Features ......................................................................................4-1
Practices for Lesson 4: New JDeveloper Features ........................................................................................4-2
)
Practice 4-1: Exploring Changes in the Composite Folder Structure and Windows Lists, and Refactoring
ฺ c om theฺ
t i o n ide
Composite (15 minutes) .................................................................................................................................4-3
Practice 4-2: Creating TODO Tasks and Using the Find Capability (15 minutes) .........................................4-7
e G u
lla..................................4-10
Practice 4-3: Managing Shared Artifacts Using Design-Time SOA-MDS (25 minutes)
n t
s den t
o
c Stu
Practice 4-4: Exploring Dependencies (10 minutes) ......................................................................................4-18
i @
arn e this
Practices for Lesson 5: Testing and Debugging ...........................................................................................5-1
l k
Practices for Lesson 5: Testing and Debugging .............................................................................................5-2
Practice 5-1: Setting Up and Deploying the CCValidate
k ฺ ku Project o us(10(15minutes) ..............................................5-3
e a in t
p se(20 minutes) ...................................................................5-10
Practice 5-2: Debugging a Composite Application JDeveloper minutes) ............................................5-5
Practice 5-3: Creating Test Suitese
i ( d icen
and Test Cases
a r
Practices for Lesson 6: BPELn Editor: l e l Features ....................................................................................6-1
New
Practice k
ulk 6: BPEL
Practices for Lesson
6-1:K f
ExploringstheeNew
b New Features ......................................................................................6-2
raEditor:
Features in the BPEL Editor (20 minutes) ..................................................6-3
a
ep 6-2: n
ePractice n - tra a Correlation Set (15 minutes) ....................................................................................6-9
Creating
DPractices
nofor Lesson 7: Transformations ......................................................................................................7-1
Practice 7-1: Transforming XML Data with XQuery and XSLT (25 minutes) .................................................7-2
Practices for Lesson 8: Protecting PII Data ...................................................................................................8-1
Practice 8-1: Setting Up and Deploying the CCValidate Project (5 minutes) ................................................8-2
Practice 8-2: Encrypting and Decrypting Specific Message Fields (20 minutes) ...........................................8-4
Practices for Lesson 9: Fault Policy Wizard ..................................................................................................9-1
Practice 9-1: Using the Fault Policy Wizard (20 minutes) ..............................................................................9-2
Practices for Lesson 10: REST Binding Wizard ............................................................................................10-1
Practices for Lesson 10: Overview .................................................................................................................10-2
Practice 10-1: Creating a REST Service Interface (HTTP Post) (15 minutes) ..............................................10-3
Practice 10-2: Creating and Configuring a REST Reference Interface (15 minutes)......................................10-10
Practice 10-3: Deploying and Testing the Composite Application (10 minutes) ............................................10-16
Practice 10-4: Creating a REST Service Interface (HTTP Get) (15 minutes) ................................................10-18
Practices for Lesson 11: New Adapters and MFT .........................................................................................11-1
Practices for Lesson 11..................................................................................................................................11-2
Practices for Lesson 12: Templates and BPEL Subprocesses ....................................................................12-1
Practices for Lesson 12: Templates and Subprocesses ................................................................................12-2
Copyright © 2016, Oracle and/or its affiliates. All rights reserved.
Oracle SOA Suite 12c: New Features and Capabilities Table of Contents
iii
Practice 12-1: Creating and Using SOA Composite Templates (10 minutes) ...............................................12-3
Practice 12-2: Creating and Using Service Component Templates (15 minutes) .........................................12-5
Practice 12-3: Creating and Using BPEL Scope Templates (25 minutes) .....................................................12-8
Practice 12-4: Creating and Using BPEL Stand-Alone and Inline Subprocesses (30 minutes) ......................12-14
Additional Practices: Sharing Functionality in Oracle SOA Suite ...............................................................13-1
Overview ........................................................................................................................................................13-2
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
Practice A-1: Setting Up Dependencies for the New OrderFlow Project ........................................................13-3
Practice A-2: Using a BPEL Component Template and a Subprocess ..........................................................13-8
Practice A-3: Deploying and Testing the OrderFlow Composite ....................................................................13-17
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
Oracle SOA Suite 12c: New Features and Capabilities Table of Contents
iv
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
a
) has
ฺ c om ฺ
t i o n ide
e l l a G u
t
Practices nfor
s Lesson e t
n 1:
Overview o
c Stu d
i @
l k arn e1 this
Chapter
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
a
) has
ฺ c om ฺ
t i o n ide
e l l a G u
Practices nfort
s Lesson e t
n 2: Quick
Start@ foro
c Developers
tu d
i S
l k arn e2 this
Chapter
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
Practices Overview
The Oracle SOA Suite Quick Start distribution allows you to quickly install a development or an
evaluation environment on a single-host computer. Quick Starts are installations for
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
development or evaluation only. If you want a production environment, start with “Planning the
Oracle SOA Suite and Business Process Management Installation” in Installing and Configuring
Oracle SOA Suite and Business Process Management to install a full-scale development
environment that can be scaled to a production environment.
In these practices, you are guided through the launching of JDeveloper, automatically
registering the IDE plug-ins for Oracle SOA Suite.
The SOA Suite and BPM Suite 12c Developer installation contains the following:
• JDeveloper
• WebLogic Server a
• SOA Suite and BPM Suite runtime components
) has
− BPM, BPEL, Human Workflow, Rules, and Mediator
ฺ c om ฺ
− Service Bus
t i o n ide
t e lla t Gu
• JDeveloper IDE plug-ins for the preceding components
o n s den
All software has been installed in a single middleware home directory.
@ c Stu
i
In JDeveloper, the WebLogic Integrated Server is preconfigured with the preceding SOA Suite
l k arn e this
runtime components and JavaDB. JavaDB is a development database that allows you to start
k ฺ ku o us
development with SOA Suite without the need to run the repository creation utility (RCU).
p a et
Your environment looks like the following on the hosted server when you have finished:
e
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
Note: You may use the desktop shortcut or follow the manual process below if you prefer.
a. For the Quick Start distribution, all software is installed in the single middleware home
directory: /u01/app/oracle/fmw
• Create an environment variable and set it to this directory:
export FMW_HOME=/u01/app/oracle/fmw
To verify that you have set it correctly, enter the following command:
echo $FMW_HOME
(You should see the above home directory in the output.)
a
has
b. In the terminal window, issue the following command to start JDeveloper:
$FMW_HOME/jdeveloper/jdev/bin/jdev )
JDeveloper is started. The Select Role dialog box opens. ฺ c om ฺ
t i o n ide
lla t Gu
2. To configure JDeveloper defaults, perform the following steps:
t e
s den
a. Deselect the Always prompt for role selection on startup check box.
o n
c Stu
b. To accept the Studio Developer (default) role, click OK.
i @
arn e this
The Confirm Import Preferences dialog box is displayed.
l k
ku o us
c. Click No.
k ฺ
a et
The Oracle Usage Tracking dialog box is displayed.
e p
i ( de icens
d. Deselect the Allow automated usage reporting to Oracle check box.
e. Click OK.
a r n le l
ulk ferab
JDeveloper opens and displays the Start Page tab.
K
p a k ans
f. Deselect the Show on Startup check box and close the Start page.
e tr
Note: In 12c, JDeveloper automatically scans the middleware directory and registers all the
De non-
IDE plug-ins. Unlike earlier releases, you do not have to download them separately. When
JDeveloper comes up, it is ready for SOA Suite development.
a
) has
4. Update the /etc/hosts file.
ฺ c om ฺ
a. Open a new Terminal and su as root. (The password is oracle.)
t i o n ide
>su – t e lla t Gu
Password: o n s den
@ c Stu
i
arn with hisinstructor if you need help.)
#
l k
b. Use vi to edit the /etc/hosts file. (Consult
e t
your
# vi /etc/hosts k ฺ ku o us
e p a e t 127.0.0.1), insert an additional host name
c. At the end of the first line
i (
used for this course: c e ns
(which contains
desoa12c.example.com
r n e
and exitlthe
i
lTerminal.
a
ulk ferab
d. Save the file
K
kthe Integrated
s WebLogic Server and configure a domain.
p a
5. Start
e nLaunchingr a n
De Note:
o -t the Integrated WebLogic Server from JDeveloper generates a domain,
n is designated
which as the default domain. However, you also have the option of launching
a JDeveloper-independent version of the WebLogic Server to configure a stand-alone
domain. For more information, see “Configuring a Domain” in Installing SOA Suite and
Business Process Management Suite Quick Start for Developers.
a. In the JDeveloper main menu, select Run > Start Server Instance.
The Create Default Domain dialog box opens.
b. Provide and confirm the password: welcome1
c. Click OK.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
den be patient.) You
ons tu(Please
Domain creation begins. This takes about 12-15cminutes.
k u lk se
p a kฺ to u
( d ee ense
r n i
e l ic
lka rab l
u
K sfe
a k
e ep n-tran
D no
s a
)h a
m
co eฺ
n ฺ
c. Log out of Enterprise Manager.
l a t io uid
s t el nt G
7. Disable Secure Sockets Layer (SSL).
c on tude
a
design-time requirements, and some laterkpractices h is SWe do not have stringent
rni@aretServer.
SSL is enabled by default in the Integrated WebLogic
ul steps:
simplified by not using it. Therefore,
ฺ k
we disable SSL by performing the following u s e
p
a. Go to the Administrator Console
e ak atehttp://localhost:7101/console.
to
e eonnthe
dshortcuts s menu bar are using 7001 (not 7101) as the listen
Note: The browser
port. You willrn i ( c
li these shortcuts to reflect 7101 if you want to use them.
a
lkusing the l e
need to change
b. Log inuby
K f e rabusername weblogic and password welcome1.
p k the Domain
c. aIn
a n s Structure pane, click Environment > Servers.
e Innthe r
-t main pane, click DefaultServer(admin).
De d.e.noDeselect SSL Listen Port Enabled.
Note: Do not restart the server instance if you plan to move directly to Practice 2-2.
Summary
In this practice, you have completed the one-time task of setting up the development
environment for Oracle SOA Suite. You have also been introduced to several tasks that you
execute repeatedly in this course, including:
• Accessing Enterprise Manager Fusion Middleware Console
• Accessing WebLogic Server Console
• Starting and stopping the Integrated WebLogic Server a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
Tasks
Note: Because this is an optional exercise, it is imperative that before configuring and
starting another WebLogic server domain on this machine, you first shut down the
Integrated WebLogic Server [Default domain] if it is running.
• In JDeveloper, go to the Application Servers tab, right-click the
IntegratedWebLogicServer node and select Terminate Server Instance.
Note: If the Applications Servers tab is not visible, from the menu bar, select Windows >
Application Servers. s a
)h a
m
co to:eฺ
1. Open a terminal window (Applications > System Tools > Terminal) and navigate
n ฺ
cd /u01/app/oracle/fmw/soa/common/bin
l a t io uid
s t el nt G
Execute the following commands: c on tude
a. First, set and export the Quick Start Templates
r ni@environment
i s S variable:
Caution: Copy and Paste from PDF lcan a
k cause e h
t to not work correctly. If you want to
k u s this
u first, remove the extra line feed, and
copy and paste, copy and paste
then copy and paste from p a ktextฺtoeditor.
a text editor
t o
ee ense
the
i
export QS_TEMPLATES= ( d ic
r n l e l
lka r<return>
"/u01/app/oracle/fmw/soa/common/templates/wls/oracle.soa_template
K u
_12.1.3.jar"
f e ab
p a k $QS_TEMPLATES
echo
a n s
e n-t r
De b.noLaunch the Quick Start Configuration Wizard:
./qs_config.sh <return>
a
) has
The installer begins. ฺ c om ฺ
t i o n ideand
lla t Gu
2. Enter the password welcome1 and confirm it. Leave the other settings as they are
click Create. t e
sto create n
Note the default ports. This configuration wizard allows o
c n
you d ea stand-alone domain
and choose your own directories for the files andi@ tu This domain uses a
ports for theSservers.
Derby database that is already preconfigured.
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
4. Select the Start Domain check box to start base_domain. Click Finish.
s a
)h a
m
co eฺ
n ฺ
l a t io uid
s t el nt G
b. To complete the wizard, use the following settings, c n Next
oclickingt u deto advance:
r
Usage: Standalone Server (selected by default)
a ni@thclickis S Next
Connection Name: standalone uclick l k Nextse
Password: welcome1 click a k ฺk
Next to
u
p
ee Defaults se click Next
d
Accept all the Configuration
( e n
r n
c. Test the connection.
e ic see all successes. Then click Finish.
i You lshould
Now, u lkstand-alone l
a ab server would be running even if you terminated JDeveloper.
erAdministration Server window, expand standalone and the SOA
the
k K still insthe
f
aWhile
ep hierarchy
r anuntil you get to the default. Right-click default and select Refresh. If you were
e - t
n this server for development, you would need to refresh after deployments,
D nousing
because JDeveloper does not automatically refresh connections.
a
) has
ฺ c om ฺ
t i o n ide
b. Close all browser windows. t e lla t Gu
o n s minutes
two fulld e n to ensure that
c Stu
Note: Before proceeding to the next step, wait for
@
the server is fully shut down. i
arn e (that
c. Check to see whether the Java DerbykDatabase
l t hiswas started on port 1527 for this
kuwill oneed
domain) was shut down. If not, ฺyou
k usto terminate that process as well.
a t
eep ense
Open a terminal and execute:
ps –ef | grep(d derby
If you see aar ni (as
process l e lic in the following screenshot), kill that process ID, for
shown
ulk ferab
example:
K
p a k -9
kill
a n s
19887
e t r
De non-
d. You should now also restart the Integrated WebLogic Server that you shut down at the
start of this practice.
In JDeveloper, go to the Application Servers tab, right-click the IntegratedWebLogicServer
node and select Start Server Instance.
a
) has
ฺ c om ฺ
t i o n ide
e l l a G u
Practices nfor t
s Lesson e t
n 3:
Getting o
cStarted d
tu with Oracle
i @ S
l k arn Suite
SOA
e t his12c
k ฺ ku Chapter
o us3
e a
p se t
( e
d icen
r i
n le l
a
K ulk ferab
p a k ans
e tr
De non-
Practices for Lesson 3: Getting Started with Oracle SOA Suite 12c
Chapter 3 - Page 1
Practices for Lesson 3: Getting Familiar with Oracle SOA Suite 12c
Practices Overview
In these practices, you deploy a SOA composite application to the integrated server, and then
use Oracle Enterprise Manager 12c Fusion Middleware Control console to initiate the deployed
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
Practices for Lesson 3: Getting Started with Oracle SOA Suite 12c
Chapter 3 - Page 2
Practice 3-1: Deploying and Testing a SOA Composite (Review)
(15 minutes)
Overview
In this practice, you deploy the ValidatePayment composite application to the Integrated
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
WebLogic Server, initiate an instance, and examine the process flow in Oracle Enterprise
Manager Fusion Middleware Control.
Assumption
The Integrated WebLogic Server is up and running.
Tasks
High-level steps:
• Deploying the ValidatePayment composite application using a command
a
• Testing and examining the deployed composite
) has
Deploying the Composite
ฺ c om ฺ
1. In a terminal window, enter the following commands: t i o n ide
cd /home/oracle/NewFeatures12c/SOA/apps t e lla t Gu
o n s den
ls –l
@ c Stu
./deploy.sh sca_ValidatePayment_rev1.0.jar i
n thinisthe terminal. You should see a
2. The build and deployment information will l k ardisplayed
be
e successfully.
ฺ k
message showing both build and deploying u executed
u s
e p ak e to
d
Testing and Examining the Deployed s
e enComposite
i (
n composite, c
li all available credit cards are stored in the database,
a r
For the ValidatePayment
l e
including payment
u lk rab
type, card number, expiry date, card name, and daily limit.
k K process
The validation s feincludes three steps:
a
e1)p First, n
a payment information is retrieved from the database, using the credit card
n-tr quoted in the order message as the key. If there is no data available with this
the
De nonumber
credit card number, payment is denied.
2) If data for the credit card number is available, the expiry date in the database record is
compared to the expiry date listed in the order message. If they are not the same, the
payment is also denied.
3) The last check compares whether the total order amount is less than the daily limit on
the credit card in the database.
If all tests are successful, the payment is authorized. Otherwise, it is denied.
3. Examine the SOA composite application.
a. Go to the Fusion Middleware Control console, and in the Target Navigation panel,
expand SOA > soa-infra > default. Now you should see the deployed ValidatePayment
[1.0] composite application.
b. Click the ValidatePayment [1.0] link. The home page (Dashboard tab page) for the
selected SOA composite application is displayed. You can view the service
components, and service and reference binding components included in the
composite.
Practices for Lesson 3: Getting Started with Oracle SOA Suite 12c
Chapter 3 - Page 3
Note: This page also enables you to perform composite management tasks such as
retire, activate, shut down, start up, and test.
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c a graphical
S tu display of the SOA
c. Click the Composite Definition tab. You should
i see
is 12c. This view is similar to the
l k arinnJDeveloper
composite applications designed in Oracle
e t hJDeveloper.
k ฺ ku o us
display of the SOA composite application Oracle
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
Here you can see that the implementation of this service uses a BPEL process to
receive the incoming payment information and then retrieve the credit card data from
the database, and perform the tests outlined in step 2.
4. Initiate and test the SOA composite application.
a. On the ValidatePayment [1.0] home page, click Test.
b. On the Test Web Service page, accept all default settings. Make sure that the Request
tab is selected.
Copyright © 2016, Oracle and/or its affiliates. All rights reserved.
Practices for Lesson 3: Getting Started with Oracle SOA Suite 12c
Chapter 3 - Page 4
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
c. Scroll down to the Input Argumentslk arn e this
u us
ฺkhave
section.
k
To enter XML payload data,ayou
p o of selecting Tree View (default) or XML
toptions
View. e e
ns interface of text fields in which to enter
( de aicgraphical
• Tree View:iDisplays e
a r n le l
ulkView: ab the XML file format for inserting values. You can paste the
information
• KXML f e rDisplays
p a k rawaXML
n s payload of your message into this field.
e t r
De non-
Practices for Lesson 3: Getting Started with Oracle SOA Suite 12c
Chapter 3 - Page 5
d. Select XML View. You should see the web service invocation payload in XML format.
Tip: You can easily copy-and-paste your data into the XML View.
e. To load the test message, click Browse next to the Load Payload field, and select the
PaymentInfoSample_Authorized_soap.xml file located at:
/home/oracle/NewFeatures12c/SOA/files/resources/sample_input
This file already includes the SOAP message needed for the web service test.
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ kucomposite
o uscompletes, the screen switches to the
f. Click Test Web Service. When a
p valuethe t
e e
Response tab and the returned
d e n se is shown (similar to the screenshot below).
n i ( l ic
r l e
u lka rab
k K sfe
a
ep n-tran
e
D no
g. Review the response message, and you should see that the payment status is
Authorized.
Note: You can also switch to Tree View to view the result.
Practices for Lesson 3: Getting Started with Oracle SOA Suite 12c
Chapter 3 - Page 6
5. From here, you launch the Flow Trace of this instance.
a. Click Launch Flow Trace.
The Flow Trace window opens. You can see the flow of the composite and the status
of each service, component, and reference.
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
ฺku todetailed
b. Click the BPEL process linkatokview the
us execution trail.
e e pprocessseactivities is displayed in a new window.
i ( d icen
The audit trail of the BPEL
a r n le l
K ulk ferab
p a k ans
e tr
De non-
Practices for Lesson 3: Getting Started with Oracle SOA Suite 12c
Chapter 3 - Page 7
1) Click ViewPayload under receiveInput. What is the Authorization Amount?
2) Click ViewPayload under getPaymentInformation. Examine the message and
answer the following questions:
• What is the input variable?
• What is the output variable?
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
Practices for Lesson 3: Getting Started with Oracle SOA Suite 12c
Chapter 3 - Page 8
Practice 3-2: Migrating a SOA 11g Composite to 12c with JDeveloper
(15 minutes)
Assumption
The Integrated WebLogic Server is up and running.
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
Tasks
High-level steps:
• Create a new 12c workspace in JDeveloper.
• Copy the 11g Project files into the new workspace.
• Deploy and test the migrated composite application.
7. Return to JDeveloper. Click the drop-down arrow on the far right and select Open Project.
Practices for Lesson 3: Getting Started with Oracle SOA Suite 12c
Chapter 3 - Page 9
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
a
8. Open the HelloWorldComposite.jpr file located at:
) has
/home/oracle/jdeveloper/mywork/Hello12cWorkspace/HelloComposite11g
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
9. You will be presented with an Open Warning dialog box that actually performs the
appropriate migration of the files from 11g to 12c. Click Yes.
Practices for Lesson 3: Getting Started with Oracle SOA Suite 12c
Chapter 3 - Page 10
10. After a few moments (30-90 seconds), the project will now be visible in the Applications
pane.
a
) has
ฺ c om ฺ
12. Take a few moments to examine the simple logic of this composite application.
t i o n ide
t e l la t Gu
Deploying and Testing the Migrated Composite Applications
o n d e n
13. Right-click the HelloWorldComposite project node in the
@ c Applications
S tu pane and select
i
Deploy > HelloWorldComposite.
l k e t his Server.” Click Next.
artonApplication
ฺkuOverwrite
14. In the Deployment Action box, select “Deploy
15. In the Deploy Configuration box,aselectk t o usany existing composites with same
revision ID. Click Next.
e e p se
(
16. In the Select Server ibox, e n
d selecticIntegratedWebLogicServer.
17. Validate that k r n
a deployment l e l Click Finish.
Control Kand
b was home
ullocatefetheracomposite
the successful. Return to the Enterprise Manager FMW
page for this new deployment.
a k
p the-tTest
18. Click s
anbutton.
e e r
D19. (or onother
Expand
nany
the request node in SOAP Body in the Input Arguments section. Enter your name
string) as the input value.
20. Click Test Web Service.
21. The response is returned. Click Launch Flow Trace to examine the details of this instance.
Practices for Lesson 3: Getting Started with Oracle SOA Suite 12c
Chapter 3 - Page 11
Practice 3-3: Migrating a SOA 11g Composite to 12c with EM FMWC
(10 minutes)
Assumption
The Integrated WebLogic Server is up and running.
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
Tasks
High-level steps:
• Deploy the StockFaultSynch 11g composite application directly using the Oracle
Enterprise Manager 12c FMW Control web application.
• Deploy the TestStockFaultSync 12c composite application using a deploy script.
• Test and validate the deployed composites.
Practices for Lesson 3: Getting Started with Oracle SOA Suite 12c
Chapter 3 - Page 12
Practice 3-4: Viewing and Testing the New Features in EM FMWC
(25 minutes)
Overview
In this practice, you explore the new user interface parts of EM FMWC.
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
Tasks
1. View the composite in the EM FMWC Dashboard.
a. Log in to EM FMWC at http://localhost:7101/em.
b. Expand SOA > soa-infra > default and select the deployed composite
TestStockFaultSync. Test it again with a payload of orcl.
c. From the TestStockFaultSync > Home > Dashboard, notice the green arrow to the left
of the composite name indicating that the composite is Active.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
d. Click the Target Information symbol to the right of the composite name to view
detailed version, location, and other information about the composite.
e. What server is it deployed on? What SOA partition? What host? Close the Target
Information dialog box.
Practices for Lesson 3: Getting Started with Oracle SOA Suite 12c
Chapter 3 - Page 13
f. View the Dashboard tab. The Dashboard displays the components for this composite
TestStockFaultSync and its services and references: teststockfaultsync_client_ep
and StockFaultSynceSvc. Click the TestStockFaultSync link in the Components section
to see its details.
g. The Activity Time Distribution appears. Note the count for each activity and its Average
Execution Time.
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
s a
)h a
m
co eฺ
n ฺ
l a t io uid
s t el nt G
c on tude
r ni@Click i s S
h. Note the Instance Rate Per Minute as aagraph.
l k15-seconde h
tincrements.
the Table View link to view the
Instance Rate in the form of a table u
ฺkthe View
in
u s Notice also that each
column is sortable. You canause
p k o
t the dialog box when done. > Unnamed Column
option: View > Columns
e s e
i ( deicon toicthe
> to hide and show the columns.
e nright
Close
r n
i. Click the Information
l e l of StockInfo (BPEL Component).
u lka rab
k K sfe
a
ep n-tran
e
D no
Practices for Lesson 3: Getting Started with Oracle SOA Suite 12c
Chapter 3 - Page 14
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
k. Use Find to find all the lines with “Assign.” Do not hit <return> or click OK. Instead,
click the Find Next blue arrow next to the binoculars icon.
s a
l. Use Go to Line to jump to line 35.
)h a
m. Use the Find Binoculars to find all occurrences of “ID.” m
co eฺ
n ฺ
n. Click OK to dismiss the Source window.
l a t io uid
t el nt G
o. View the Sensor Definitions and Sensor Action Definitions.
s
c on tude
a r ni@ this S
k u lk se
p a kฺ to u
( d ee ense
r ni lehaslicno sensors defined. If you had a complex BPEL component
p. This BPELacomponent
ulk fsensor
with multiple
K e r abactions and definitions, how could you locate a particular definition
p a k this window?
in
a n s
e Hint: r
n-tOK
De q.noClick
Same as searching the source.
to close the Sensor Definition window.
Practices for Lesson 3: Getting Started with Oracle SOA Suite 12c
Chapter 3 - Page 15
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
Hint: Click in the text field and note the pop-up message.
s a
) ha
m
3. Click the Target Information icon again, and then the fully qualified compositeoname. Where
does this take you? Answer: Back to the Composite Home page Dashboard
o n ฺc tab eฺ
l l a ti u id
s te ent G
4. Search for composite and instances information.
co S n d is displayed?
a. On the composite Home, click the Composite@
i Definition tuWhat
tab.
b. Click the Source tab below the diagram.
l k aWhat
e t his Notice you can easily
rn is displayed?
resize the diagram as needed. u
a k ฺk to us
e p
c. Back on the Design tab, click the TestStockFaultSync
s e image. Note that the Isolate icon
i ( de icen
appears. Click the Isolate icon.
a r n le l
K ulk ferab
p a k ans
e tr
De non-
Note that this shows just the selected component.
d. Select the large isolated TestStockFaultSync icon and click the Additional Links icon.
Note that this displays the other components to which this component is connected.
e. Click the Flow Instances tab.
f. The Search Option pane slides out.
Hint: If the pane does not slide out, click the Spyglass.
Practices for Lesson 3: Getting Started with Oracle SOA Suite 12c
Chapter 3 - Page 16
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
g. Click the Search button. What is displayed?
o n s deselect n Recent
h. From Search Options, the green plus sign (+) with
@ c Stu
the pull-down,
i
rn this
Instances. What happens when you select this?
i. Are there any other Search Options?lka
ฺ k s e the custom search values, and
uvalues,usave
bookmark the search page.
e p ak e to
Note that you can reset the search
i ( de icens
5. Search for anda r
view l e l
n fault information.
a. TestK ulkTestStockFaultSync
the
f e rab composite this time with the value msft. Then test
p a k
again
a
withn s
the values orcl, goog, and ibm.
e t r
n- msft, goog, and ibm will cause faults. This is as designed for the practice.
De noNote:
b. Return to the Composite home page and click the Flow Instances tab.
c. Search for composites created in the last 2 minutes, 8 minutes, and 15 minutes.
d. Click the Custom Time Period to create your own defined range of date and time to
search within. What happens when you select this? Deselect this check box when you
are done viewing the options.
What States can you search for? What Time Options can you filter for? What faults can
you search for? Select More Options to see additional search options.
e. Select each fault and notice the change in the Search options for that fault.
Practices for Lesson 3: Getting Started with Oracle SOA Suite 12c
Chapter 3 - Page 17
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
a
) has
ฺ c om ฺ
t i o n ide
e u
lla arettheGdifferent
s t
f. Choose All Faults for the fault. What fault types are there? What
n Fault
Owners?
c on tude
a r ni@ this S
k u lk se
p a kฺ to u
( d ee ense
r n i
e l ic
lka rab l
u
K sfe
a k
e ep n-tran
D g.noLeave the Fault Owner set to component and select the Name pull-down. What, if any,
Fault Owners are there?
h. Change the Fault Owner to Mediator and select the Name pull-down again. Is there
any change? Why?
i. Click the Spyglass to hide the Search panel.
Practices for Lesson 3: Getting Started with Oracle SOA Suite 12c
Chapter 3 - Page 18
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
c. Click the Composites tab. What is this composite’s sequence in the flow? When did the
flow enter the composite?
d. Close the Flow Trace window.
e. Use the Hide Details icon to toggle detail display on and off.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c instance.
S tu The Flow Trace
i
arn e this
f. Click the Flow ID again for the most recent composite
window appears.
l k
ku to otheuFlow
g. Click the More Information iconฺnext
k s Trace title. Note the information
e p a
displayed. Note that the correlation
eID tand ECID have been moved to this area.
de icen s
i (
n le l
a r
K ulk ferab
p a k ans
e tr
De non-
h. Under Trace, select Actions > Flowtrace XML to view the XML for the flowtrace. Close
this window when done.
i. View the instance IDs for the components of this composite by selecting the Show
Instance IDs check box.
j. Click the GetStock component in the trace. Click the More Information icon next to the
Instance of GetStock title.
Practices for Lesson 3: Getting Started with Oracle SOA Suite 12c
Chapter 3 - Page 19
7. View the changing composite state.
a. Shut down the TestStockFaultSync composite. Note that the arrow changes to red,
indicating the composite is no longer active. Start up the composite.
b. From the Home Dashboard, click the TestStockFaultSync BPEL component link.
c. Note the Related Links. Select SOA-Infra Home to navigate to the SOA Infra
Dashboard.
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
d. Click the Error Hospital tab. Click Search. What do you see?
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
Practices for Lesson 3: Getting Started with Oracle SOA Suite 12c
Chapter 3 - Page 20
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
a
) has
ฺ c om ฺ
t i o n ide
e l l a G u
Practices nfor
s Lesson
t e n 4:
t
o
JDeveloper:
c SNew d
tu Features
i @
l k arn e4 this
Chapter
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
s a
)ha
m
co eฺ
n ฺ
l a t io uid
s t el nt G
c on tude
a r ni@ this S
k u lk se
p akฺ to u
( d ee ense
r n i
Expand the CustomerInfoSvc
e l ic project.
lka rab l
u
Knew folders:
fe BPEL, WSDLs, and Schemas. Take a moment to explore their
3. Notekthe s
a n
p -tInraJDeveloper 12c, you can choose where to store artifacts and components.
econtents.
D4.e Right-click
non the CustomerInfoSvc composite file and select Open to open it in the main editor
window.
a
6. In the composite editor, right-click the BPEL component and select Rename. Rename
) hait s
CustData.
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
a
7. Does
p kthe Structure
a n s window reflect this name change or does the asset appear in the BPEL
r
efoldernin-the
t Applications window? Answer: No.
De Closeo
n the composite editor and reopen it. Now check the Structure window again. The
Structure window has been refreshed to show the new name of the BPEL component.
8. Right-click the BPEL component and select Edit to open it in the BPEL editor. Look at the
editor window and inside the window. What was changed when you renamed the BPEL
component? Answer: Just the name of the main process scope. The file name still remains
RetrieveCustomerData.bpel.
9. Return to the composite editor and try changing the BPEL component name back to its
original name RetrieveCustomerData. Are you able to do this? Why not? Fix the issue
by closing the open BPEL editor, and then complete the renaming.
10. In the Applications window, expand the BPEL folder, then right-click the .bpel file by using
Refactor > Rename.
a
• Rename the RetrieveCustomerData.bpel file GetCustData.bpel. Save ) as
hyour
changes.
ฺ c om ฺ
• Reopen the BPEL component in the BPEL editor. What has changed t i o n as a result
i de of
your renaming? l a
el nt G u
s t
BPEL scope, but the file name remains the same.@ Renaming
de renames the main
con Sthetueditor
You can see that renaming a BPEL component in the composite
.bpel file renames the
tab that opens in the editor. a r ni this
• Now change the .bpel file name k u lk RetrieveCustomerData.bpel.
back to u s e
ฺ
ak e to
e p
11. With the BPEL component
i ( nsBPEL editor, open the Component window. If it is
deopenicinethe
by selectingl the Window > Components menu option.
not visible, open ritn
u lk rable
a
k K in thesBPEL
12. Right-click fe Constructs section of the Components window. From the shortcut
a
p select n
emenu, traIcon View with No Labels. Note how the display changes.
De non-
Now expand the BPEL Services section of the same window. Did your changes affect this
area as well? Answer: No. Each section has its own display options.
• Right-click and select List view. Note the changes. Reset the changed areas of the
window to whichever display suits you best.
a
) has
ฺ c om ฺ
t i o n ide
Answer: Coherence, JDE, LDAP, MFT, REST, Salesforce, and SAP
e lla tnew.
are
G u
n t
s den
o
c Stu
i @
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
2. In the Composite Editor, create two TODO tasks named Refactor BPEL Name and Add
Mediator.
• To do this, click the TODO Tasks icon on the Composite toolbar to open the TODO
dialog box. Then click the green plus (+) sign to create the new tasks. Click Close
when done.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
3. Place the cursor over the TODO icon. What do you notice?
4. Change the TODO task to Change BPEL Name. Did you notice that you have to press
Enter for your change to be applied? Simply closing the TODO dialog box does not apply
your change. Close the window when you are done.
to press Enter to save your edits before closing the dialog box).
Notice the small TODO Task icon that has been added.
a
7.
has
Reopen the BPEL component editor. Add a TODO task to the main BPEL scope:
RetrieveCustomerData. )
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
Name the task Add Assign.
8. Save your changes. What changes do you see on the diagram as a result of creating the
BPEL TODO? Place your cursor over this new icon. What do you see?
9. Change the BPEL TODO item to Add Assign Activity. (You will need to carefully click
the TODO icon to avoid the arrow coming from the Partner Link.)
11. Click the pull-down to the left of the Find box. What are the options? What are they used
for?
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
Check Match Case and search for assign. l kWhat e t hisDeselect Match Case when you
arnhappens?
are done. k ฺ ku o us
e p a et
de iicon. e s
nWhat
n (
12. Click the Show Blocki Coloringl c happens? What is it trying to show?
r l e
u lka rab
k K sfe
a
ep n-tran
e
D no
Notice that the block shading corresponds to the plus (+) sign or the minus (–) sign to
expand or collapse sections, respectively, in the editor.
a. Select the Resources window. If it is not open, open it by selecting Window >
Resources.
b. Expand the IDE Connections window. You should see an entry for SOA MDS. Expand
that node, and then expand SOA_DesignTimeRepository. You see the following
structure: apps.
a
) has
ฺ c om ฺ
t i o n ide
e lla Where
c. Right-click SOA_DesignTimeRepository and view the properties. G u
is the
design-time repository stored? n t
s den t
o
c Stu
i @
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
i ( de icens
from the file system.
a r n le l
K ulkto the
2. Add an asset
f e r ab Time SOA-MDS and transfer it to the runtime SOA-MDS.
Design
k atonthe
a. Return
p a s CustomerInfoSvc project. Expand the Schemas folder and verify that
e n-tthe r
customerinfo.xsd asset is in the Schemas folder.
De b.noOpen the RetrieveCustomerData.wsdl file. View the source. Where is the
customerinfo.xsd file located?
Answer: ../Schemas/
a
) has
ฺ c om ฺ
Click Next to advance to Choose Target. t i o n ide
d. Select “apps,” and then add a new folder named Customer e llbya usingt the
G u“Create a
folder” button. n t
s den
o
c Stu
i @
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a kneeded,
If
a n s the “apps” folder until you see the Customer folder.
expand
r
e n-t the newly created Customer folder. Note that the following path appears below:
De e.noSelect
/apps/Customer.
Also notice the message at the bottom of the window showing the complete location
where the asset will be stored. Click Next.
Note where the assets will be stored:
oramds:/apps/Customer/customerinfo.xsd
oramds represents the SOA-MDS itself starting at the apps level.
Note: You could overwrite another resource with the same name if you needed to.
Click Next.
f. The References step shows what substitutions will be made. Click Finish and
acknowledge the completed transfer.
g. In the Resources window, right-click Design-time SOA-MDS and select Refresh.
Expand the repository and verify that the asset you added is present in the Customer
folder. You should see the new folder and file you transferred.
h. In the Applications window, expand the Schemas folder for your CustomerInfoSvc
composite. Note that it is now empty. The asset has been physically moved from the
project folder to the SOA Design-Time MDS Repository.
It has been updated to refer to the asset that now resides inside oramds.
s a
j. Attempt to deploy the CustomerInfoSvc composite. Do you think it will succeed?
)ha
Were you right? Check the JDeveloper Log window - Deployment tab. In that log
window, a message redirects you to the server log for more details.
m
co eฺ
n ฺ
l a t io uid
s t el nt G
Answer: Even though the assets have been transferred
c on totthe u e Design-Time MDS
dSOA
r ni@
Repository, they are not available to the runtime S
IntegratedWebLogicServer
i s
DefaultDomain. To make them available,
l k a you must
e t htransfer the Design Time SOA-MDS
to the Run-Time SOA-MDS.
k ฺ ku o us
e p a et
3. To do this, you must have
( d e ens to the file-based Run-Time SOA-MDS. You will now
a connection
i
create this connection.
r n e l ic
a. Start bylk a aanew
creating l
b Resources connection. In the Resources window, select New >
u
IDEKConnections r
fe > SOA-MDS.
a k n s
ep tra
De non-
b. Use any name for this Run-Time SOA-MDS, but make sure to select “File-based.” The
Integrated and stand-alone domains use file-based MDS repositories instead of the
database.
c. Browse to its directory at:
/home/oracle/.jdeveloper/system12.1.3.0.xxxx/DefaultDomain/store
/gmds/mds-soa/soa-infra
Copyright © 2016, Oracle and/or its affiliates. All rights reserved.
a
Test the connection. Click OK.
) has
d. om ฺ
Initially the new Run-Time SOA-MDS contains only some preseeded assets. You are
ฺ c
t i o n ide
going to transfer your assets from the Design-Time SOA-MDS to the Run-Time SOA-
MDS.
t e l la t Gu
•
o n s den
In the Resources window, under SOA-MDS, right-click SOA_DesignTimeRepository,
and select Transfer.
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
• In the dialog box, expand apps and expand Customer. Note that the
customerinfo.xsd asset you moved to here earlier is shown. Select the check box
for customerinfo.xsd and StockSchema.xsd as well. Make sure the Target
Connection is the Run-Time SOA-MDS and click Transfer.
s a
)h a
m
co eฺ
n ฺ
l a t io uid
Close the acknowledgement message.
s t el nt G
e. Refresh the Run-Time SOA-MDS. Do you see the new
and XSD assets you transferred? c on tudeand Stock Folders
Customer
r ni@ this S
f. Deploy the project. Does it deploy successfully?
a
You have moved an asset from the k u lk file-based
local s e design-time repository to the stand-
ฺ
ak repository.
alone server run-time, file-based
u
to This asset can now be easily shared and
reused across composites.e p e
s now see how to do this.
i ( de icYou e nwill
a r n le l
u lk from
4. Reference assets
r a b Design-Time SOA-MDS.
the
K a new
a. Create
k s fecomposite project named CustomerProfile in the same application
a
ep n-tra n
workspace, SOAWorkspace, (File > New > Project > SOA Project).
e
D b.noAdd a simple Synchronous BPEL Process and expose it as a SOAP service. For the
Input and Output variables, first Import the schema from the Type Chooser dialog box,
and then select Design-Time SOA MDS and expand the folders until you find the
Customer folder. Expand the folder and select the customerinfo.xsd file. Select the
customerInfo type for both the Input and Output variables. Refer to the following
screenshots if you need assistance.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
c. View the WSDL for this service. What is the path to the customerinfo.xsd resource?
Answer: oramds:/apps/Customer/customerinfo.xsd
d. Deploy the project. Notice that the deployment succeeds, because the asset was
previously transferred to Run-Time SOA-MDS.
Note: If the deployment fails, you may need to restart the Integrated Server Instance to
recognize the new MDS artifacts.
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
s a
)h a
m
co eฺ
n ฺ
l a t io uid
s t el nt G
c on tude
2. Investigate what is displayed.
a r ni@ this S
What is this WSDL file dependent on? What
k u lk is dependent
s e on it?
ฺ
ak e to u
e p
i ( de icens
a r n Openleforl the customerinfo.xsd node. What happens? Answer: It
lk displayed
3. Right-click and
uand select
rabin the XSD editor.
K
is opened
k ans f e
p a
e nto-tthe r
D4.e Return
no Dependency Explorer tab. Right-click CustomerInfoSvc and select Explore
Dependencies. What is displayed?
6. Click the Filter icon and enter bpel as a Custom Filter Extension.
What happens when you click OK? Answer: The BPEL component dependency is
removed from view.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
a
) has
ฺ c om ฺ
t i o n ide
e l l a G u
t
Practices nfor
s Lesson e t
n 5:
Testing o d
candSDebugging
tu
i @
l k arn e5 this
Chapter
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
populated in the database, and the CCValidate project has already been deployed to your
Integrated WebLogic Server.
Tasks
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
9. Click OK.
a r n le l
k theraSelect
ulclose b Connection dialog box.
K
10. Click OK to
k isarun. s f e
p
Thea script
r n
eeOpenonand
D11. -t run another script to populate the data:
n
/home/oracle/NewFeatures12c/SOA/scripts/SQL/JDBsoademo_data.sql
When prompted, select the SOA connection that you defined a moment ago.
Tasks
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c(whichSwetuset in the /etc/hosts
i
hisconnection settings.
arn edefault
6. Change the Host by typing in soa12c.example.com
l k
file in Practice 2). Click OK to accept the remaining t
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
11. Click the Data tab and examine the incoming (normalizedRequestMessage payload)
values.
13. Repeat until the debugger arrives at the first Assign activity.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i (
14. Press F7 again to observe c ns of the individual copy statements in the Assign
dethe iprogress
e
r n variables
activity. Expandathe l e lin the data window as needed.
K ulk ferab
p a k ans
e tr
De non-
15. Continue to use the F7 and F8 keys to move forward through the BPEL process. After
exiting the BPEL process and returning to the hellobpel_client_ep interface, pause to
observe the value of the response message.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
Tasks
Creating and Running a Test Suite and Test Case on a Composite
1. If not already open, open the HelloBPEL composite in the composite editor.
2. Right-click the testsuites folder and select Create Test Suite. Accept the default name and
click OK.
3. The Create Composite Test Wizard appears. Accept the default test name.
Note that you can create new test suites in this window, if needed.
Click Next. a
has
4. Here you can choose the service and operation and, if applicable, call back the operation to
)
test.
ฺ c om ฺ
Accept the defaults and click Next.
t i o n ide
t e lla t Gu
5. Click Generate Sample and change the amount value to 1000, and the CCNumber value to
1234-1234-1234-1234.
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
Click Next.
6. Click Generate Sample and change the values for the response as shown:
8. Run the test by right-clicking the test case in the Applications window and selecting Run
Test. If prompted for a deployment choice, use soa12c.example.com.
s a
)h a
m
co eฺ
n ฺ
l a t io uid
s t el nt G
9. Accept the default server information and click OK. c
on tude
r nito@deploy,
i s S
a
Accept the default for the test to run. If prompted
k test results
lthe e h
t are displayed. If they do not display,
click OK.
After the composite deploys, it runs and k u
ฺ Test u s
right-click the test case and select
p a kShow t o Results.
( d ee ense
r n i
e l ic
lka rab l
u
K sfe
a k
e ep n-tran
D no
11. Clicking the Expected or Actual value in the Assert Results area displays the XML.
12. Create another test for the same test suite, and this time change the expected response to
a
has
INVALID.
)
Rerun the test and examine the results. As expected, the test results indicate the error.
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
13. Search for all of the tests by clicking the Query Test Runs spyglass in the test results
window. Leave the fields empty and execute the query.
All test runs are displayed. Write down the exact name of one of the test runs.
14. Run another query but this time, enter the test name you wrote down from the previous step
exactly and query. The test results appear.
17. Double-click the BPEL component. You are prompted to create a component test.
Accept the default name and click OK. The BPEL editor opens in test mode.
a
18. Right-click the Assign_ValidateCC activity and select Edit Activity Test Data. ) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
ฺ
19. Click the green plus sign (+) to create
k kaunewoassert.
us
a
p se t
For Target, choose inputVariable/payload/ns2:CreditCheckRequest/ns2:CCNumber
e and
e n
i (d lice
click OK.
n
For Value, enter r1234-1234-1234-1234.
le CC Number. Click OK.
u lka enter a b
k K sfer
For the description, Test
a
ep n-tran
e
D no
Note that you can enter an assertion count to force the activity to execute a specified
number of times.
21. Rerun the test and view the results. Do you see the output for the BPEL activity test?
Using the BPEL test, you can now create assertions of individual activities.
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
a
) has
ฺ c om ฺ
t i o n ide
e l l a G u
Practices nfort
s Lesson e t
n 6: BPEL
Editor: o
cNewSFeatures
tu d
i @
l k arn e6 this
Chapter
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k isaansmall
There s yellow warning indicator.
e r
t the cursor over the warning indicator. What is shown in the pop-up
De no• n-Place
message?
a
) has
f. Notice that all the tabs that were present in the Edit Assignment window o
c mnow
are
available as editable properties.
o ฺ
n ideฺ
t i
t e lla t Gu
Click the Copy Rules tab. Click the Launch Assign Editor button.
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k EditanAssignment
s
e The t r window opens.
De non-
Notice that this is the same Edit Assignment window that you opened by
double-clicking the activity. Close the window when you are done.
s a
)h a
m
co eฺ
n ฺ
l a t ioJDeveloper
u id 12c, all
l
Note that all the tabs present in the dialog box are here as well. In
te ewindow. t G
s
the BPEL activity properties can now be edited in the Properties
n n
co Toolbar.
2. Use the Additional Capabilities of the BPEL Editor – BPEL
@ S t ud
i
n tmenu,
a. Right-click the Assign1 activity. From thershortcut is select Add TODO Task. In the
k a h
ฺ k ul use
pop-up window, enter Create copy action.
e p ak e to
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
a
d. has
Note that from Property Structure, you can select different aspects of the BPEL
)
process.
ฺ c om ฺ
Select Partner Links.
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
de appears.
The Partner Link window
i ( c e ns Examine the contents.
r
In this window,
a li edit, and delete Partner Links. Close this window.
nyou canleadd,
u lk Structure
The Property r ab provides the same access to many of the same BPEL
K
k anas
constructs f e
s the Structure window.
p a r
e n-t Structure window. It is usually located in the lower-left corner of the
De noJDeveloper
e. Access the
window. If you do not see it, select Structure from the Window menu.
f. Note that the Structure window has a tab next to it named Thumbnail.
Click the Thumbnail tab.
a
has
This displays the BPEL version and any properties that have been created for the
BPEL process. Close this window. Note also that the BPEL version is also now
)
displayed as a watermark in the lower-left corner of the Editor window.
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i is
l k arn eYou t hwill
i. From the Property Structure, select
ฺ k uProperties.
u s create a property for use later
in the practice.
p k
aProperties tofolder and create a new property by clicking the
e e
ns CustomerID.
( de theicproperty
In the dialog box, select
green plus sign.i Name
the
e
a r n le l
K ulk ferab
p a k ans
e tr
De non-
j. For the type, select Browse Types, then expand XML Simple Schema Types and
select string. Click OK.
After a moment, the newly created property appears.
Confirm your work, and then click Close to close the dialog box.
Copyright © 2016, Oracle and/or its affiliates. All rights reserved.
Note how the diagram changes. When done, switch these back on.
l. Continuing with the Designer Settings, switch the Partner Link Connections on and off.
With this, you can toggle display of the connection lines themselves.
Switching these off can help make diagrams with many partner links more readable.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
Tasks
1. Make sure that the BPEL editor is open and you are editing
RetrieveCustomerData.bpel.
2. Add a new scope immediately after the Assign_1 activity and add an invoke activity to the
new scope.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
a
) has
ฺ c omin theฺ file
Note: You can click the Import Schema File button and search for schemas
t i o n ide
lla t Gu
system, the Design-time SOA_MDS, or Project Libraries, if needed.
d. Click OK three more times to close all dialog boxes. ste
o n d e n
c u
4. Right-click the Invoke1 activity icon and selectrn i@ is St
Edit.
u l kand th select the variable you previously
a locatee and
ฺk to us
Click the Browse Variables spyglass icon
created: CustomerCorrelationInfo.
a
p se k
e e
d icen
i (
n le l
a r
K ulk ferab
p a k ans
e tr
De non-
5. Right-click the Invoke1 activity and select Setup Correlation. The Correlation Wizard
appears. In this practice, you create a new Correlation set. However, you could also choose
to edit an existing correlation set, if there is one.
6. Name the new correlation set CustomerIDCorrelation.
You will need one property to map to the customer ID. By clicking the Browse button ,
search for the property you previously created named CustomerID. a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e n-tr
De Select
no CustomerID from the list of properties and click OK.
Note, as a convenience, you can also create, edit, and delete properties through this
interface.
7. Click Next. In Initiate Settings, choose “yes” for Initiate for the Invoke1 activity, and choose
request for the pattern.
For BPEL 2.0, you can select “response” if the correlation applies to an inbound message,
“request” if the correlation applies to an outbound message, or “request-response” if the
correlation applies to both outbound and inbound messages.
In this use case, you add the correlation to the invoked request. Click Next.
s a
Select CustomerID and click the icon for the Drag and Drop Editor.
) h a
Expand the CustomerCorrelationInfo variable until you see the ns1:id element. m
co Drag this to
n ฺ ฺ
the CustomerID Property Alias.
l a t i de Click
io fromuthere.
el nt G
Note: You can also use the Property Alias Editor and select the element
Next. s t
c on tude
a r ni@ this S
k u lk se
p a kฺ to u
( d ee ense
r n i
e l ic
lka rab l
u
K sfe
a k
e ep n-tran
D no
d. From here you can change the type for the property as well as add and delete property
aliases.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
a
) has
ฺ c om ฺ
t i o n ide
e l l a G u
t
Practices nfor
s Lesson e t
n 7:
o
c Stu
Transformations d
i @
l k arn e7 this
Chapter
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
project contains:
• An inbound File Adapter service (ReadFile), which polls for files in a directory location
and reads in the native data. It then performs an nXSD translation from the native data
format into an XML payload corresponding to the purchaseOrder element defined in
nxsd_po_schema.xsd.
• An outbound File Adapter reference (WriteFile), which creates a new file (for each
request) and directly writes the provided data. It expects an XML payload
corresponding to the order element defined in internal_order.xsd.
• A second outbound File Adapter reference (WriteFixed), which performs an nXSD a
has
translation from an XML payload into native data, then creates a new file (for each
)
ฺ c om ฺ
request) and writes that fixed-length formatted data to the file. The expected XML
payload is the record element defined in nxsd_fixedLen_schema.xsd.
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
Tasks
1. Creating a Mediator Component
a. Open the NativeData composite application project in the SOAWorkspace application.
b. In the Composite Editor, drag a Mediator component from the Component Palette into
the Components column.
The Create Mediator dialog box opens.
f. Create a wire from the RouteFile Mediator icon to the WriteFile reference icon.
Create a wire from the RouteFile Mediator icon to the WriteFixed reference icon.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
decan ignore
e s Error messages for now.
nthe
g. Save your work.i You(
n le li c
a r
2. CreatingK ulkXQuery
the f e
b
raTransformation for the WriteFixed::Write Routing Rule
a k s
anthe RouteFile Mediator icon and select Edit.
e ea.p The- t r
Right-click
D non Mediator configuration editor opens.
b. Click the “Select an existing mapper file or create a new one” icon next to the
Transform Using field.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
ฺ ku o usMap dialog box.
Click OK to close the Create Transformation
k
e p
Click OK to close the Requesta Transformation
e t Map dialog box.
e n s
r n i (d (purchaseOrder_To_record1.xqy)
e. The XQuery Mapper
l i ce window opens.
Completelyaexpand the
lkhierarchies.
a b lepurchaseOrder Input Source as well as the record Target
Type u
k K sfer
tree
a
ep n-tran
e
D no
shipChoice shipMethod
status status
ccType ccName
ccNumber ccNum
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p
g. a k thatnsyou can view the XQuery source by clicking the corresponding tab at the
Noticera
e n-t to examine the file. You can also view individual mappings by opening the
De nobottomProperties editor pane directly underneath and selecting a mapped line.
h. Save all your work and then close the purchaseOrder_To_record1.xqy tab.
Copyright © 2016, Oracle and/or its affiliates. All rights reserved.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
Source Target
i
custID customerId l k arn e this
orderId kฺ
ku o us
ID
e p a et
e ens
payOption dpayMethod
(
r n i
e l ic
lka rabstatus
shipChoice l
shipMethod
u
K sfe
status
a k an
e ep n-trccType cardType
D no ccNumber cardNumber
i. Map the node itemlist to the node items.
The Auto Map Preferences window appears again.
j. Click OK to accept the defaults
Note: Something very different happens this time. First, Auto Map finds several
matches. Secondly, a for-each node is added to the target message structure, and
the repeating element item is mapped to it. The for-each node is a graphic
representation of an XSL construct that allows processing of repeating message
elements in a loop.
k. Manually map the quantity node to qty.
4. A copy of the file is passed to the composite application, and then, after
transformation, a purchase order is written to:
/home/oracle/NewFeatures12c/SOA/output/podata/po_<dateTimeSta
mp>.xml
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c
and verifyS tuthe data is correctly
i
Use JDeveloper or a text editor to open the output files that
formatted.
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
a
) has
ฺ c om ฺ
t i o n ide
e l l a G u
t
Practices nfor
s Lesson e t
n 8:
o
c PII
Protecting tuDatad
i @ S
l k arn e8 this
Chapter
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
populated in the database, and if the CCValidate project has already been deployed to your
Integrated WebLogic Server.
If you have successfully completed Practice 5-1, you can skip this practice and go
directly to Practice 8-2.
Tasks
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
9. Click OK.
10. Click OK to close the Select Connection dialog box.
The script is run.
11. Open and run another script to populate the data:
/home/oracle/NewFeatures12c/SOA/scripts/SQL/JDBsoademo_data.sql
When prompted, select the SOA connection that you defined a moment ago.
results in EM FMWC.
Tasks
1. In JDeveloper, ensure that the SOAWorkspace application is selected, and that the
CCValidate project is expanded.
Open the CCValidate (composite.xml) in the editor.
2. Right-click the entry point, ValidateCreditCard_ep, and select Encrypt Sensitive Data.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
3. There is onelk ab
K u policy: oracle/pii-security-policy.
Clickkthe pencil s f e r
icon to edit the policy.
e p a r a n
t
De non-
You will choose the message fields to add and set the key values for the security policy.
4. On the “Select Fields from input message(s)” screen, click the + icon to open the
Expression Builder and add the CCNumber field.
Click OK to exit the Expression Builder.
Click Next twice to advance to Select CSF Key Value.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
5. Click the plus sign (+) next to CSF Key Values to add a new credential.
1) User name: weblogic
@ c Stu
i
arn e this
2) Password: welcome1
l k
ku o us
3) Key: pii-csf-key2
k ฺ
e
6. Click Finish, OK, and OKeagain pato complete
s e t the dialog boxes and acknowledge the
i (
message about decrypting c n before sending to external services.
d the imessage
e
arn able l
l k
Ku stofthe
7. Add decryption
k er outbound payload.
a
ea.p Data. r anthe CreditCardDBService external reference and select Decrypt Sensitive
Right-click
e - t
D non
b. There is one policy: oracle/pii-security-policy. Click the Pencil icon to edit the policy.
c. Click the plus sign (+) to launch Expression Builder. Use this to add the ccNum to be
decrypted. Click OK when done. The Selected field should look like this:
d. Click Next twice. Ensure you choose the pii-csf-key2 value. Click Finish because you
are not decrypting the output message and you are using the same policy.
e. Click OK and OK again to complete the dialog boxes and acknowledge the message
about decrypting the message before sending it to external services.
n i (
createCred(map="oracle.wsm.security",
l key="pii-csf-key2",
r
a able password="welcome1", desc="Key for pii")
user="weblogic",
k
u l r message “Credential created successfully,” close the terminal
f. When
k K youandsee
s f ethe
e p a window
r a n return to the EM FMWC.
n- t
D9.e Test
nothe encryption and decryption.
a. Before testing, check whether the Audit Level is set to Development; if not, apply that
change first. (The default setting for your environment is Production.)
Right-click soa-infra and select SOA Administration > Common Properties.
b. Go to the CCValidate composite home page and test it with a payload value of:
1234-1234-1234-1234 for CCNumber, and 1000 for amount
c. After the service executes, click the Launch Flow Trace button. On the flow trace, click
the ValidateCreditCard link.
d. In the Audit Trail, click the first View Payload link in the onMessage Input payload
received section.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
f. Close the View Payload window. ulk
arn e this
You are returned to the Audita k ฺk screen.
Trail t o us
e e p directly
seunder the invoked two-way operation
g. Now click the View Payload
( d e n
c ccNum is still encrypted.
i Noticelithat
“CreditCardDB…”.
r n l e
a at athebresponse just below to see that the cardNumber is visible. (You
h. However,
didK
lklook
uspecify r encryption for the response messages.)
k not
s f eany
a
ei.p Close r anopen windows.
all
e - t
D non
10. Additional optional activities:
If time permits, try experimenting with encrypting and decrypting the corresponding
sensitive data in the responses.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
a
) has
ฺ c om ฺ
t i o n ide
e l l a G u
t
Practices nfor
s Lesson e t
n 9: Fault
Policy o
c Stu
Wizard d
i @
l k arn e9 this
Chapter
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
Assumptions
This practice makes no assumptions.
Tasks
n (
i error andl ic do not [yet] throw any faults.
r
applications run without
l e
a abManager FMW Control: http://localhost:7101/em
a. Open the
u lkEnterprise
b. Ink the er
K TargetsfNavigation pane, expand the SOA > soa-infra > default nodes in the tree.
e p a r a n
Clicktthe “CallGreeting [1.0]” link.
De c.noOnn-the “CallGreeting [1.0]” home page, click the Test button.
d. On the Test Web Service page, scroll down to the Input Arguments section to the
Request tab. Click the arrow to expand payload.
e. Provide your first name (or any other text you like) as input.
f. Click the Test Web Service button (located at the top right or bottom right).
g. On the Response tab, click the Launch Flow Trace link. Verify that each step has
completed without error.
a
) has
ฺ c om ฺ
Generating a Remote Fault
t i o n ide
3. Shut down the SayHello project.
t e lla t Gu
o n s soa-infra
a. In the Enterprise Manager target navigation pane, expand
d e n > default.
b. Select the SayHello project.
@ c Stu
i
c. In the SayHello pane, click Shut Down.arn
l k e t his
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
a
The Fault Policies editor opens.
) has
ฺ c om ฺ
7. Define a fault policy.
t i o n ide
a. Name the policy callerPolicy.
t e lla t Gu
b. Select remoteFault from the Fault Name drop-down n
o s den
list.
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e n-tr[retry] default-retry from the Default Action drop-down list.
De c.noSelect
This defines what actions the policy will take when it is activated.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
arn e this
The policy is now created.
d. Save your work and close the Policylk
ku ofileuisscreated in the project under SOA.
Wizard.
k
a et
Notice that the fault-policies.xml ฺ
e p
e ens
i ( d ic BPEL process CallingProcess.
9. Associate the faultnpolicy with lthe
r l e
u lka raEditor
a. On the Composite b toolbar, click the Edit Composite Fault Policies icon.
k K
Note:
s f e
The following screenshot will not match yours. Your project is named
ep a n
tra
CallGreeting.
De non-
The Composite Fault Policies screen is displayed. On this screen, you can associate
fault policies with the composite or the components therein. In this practice, you
associate the policy with the BPEL CallingProcess.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
c. Click OK.
k ฺ ku o us
e p a et
( d e ens
10. Redeploy and test the application.
a. Redeploy the n
r i
CallGreeting
e l icproject to activate the fault policy.
b. Repeat lthe l
kaearlierrastep
b 2 to test the CallGreeting composite.
K u f e
a k
c. On the s
Response
n tab, click the Launch Flow Trace link.
ep Thisn-tr
a the trace indicates that the instance was retried three times after the initial
De nofailure.
time,
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icewant
d. Click Yes to confirm that you nsto start the SayHello composite.
a r n le l
lk therfault.
uEnterprise
13. Manually recover ab
k
a. In K
the s f e Manager target navigation pane, expand soa-infra > default.
a
eb.p Select n
-trathe CallGreeting project.
De c.noInnthe CallGreeting pane, click Flow Instances.
a
) has
The Flow Trace for the instance is displayed.
ฺ c om ฺ
f. On the Faults tab, click the Recovery Required link.
t i o n ide
Details of the fault are displayed along with the Retry and e lla options.
Abort G u
n t
s den t
g. Click Retry. o
c Stu
i @
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
The Recovery status is updated. o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
( d e ens
r
i. Close the openn i
Flow Trace
e l icwindow.
lka rab l
u
K sfe
a k
e ep n-tran
D no
a
) has
ฺ c om ฺ
t i o n ide
e l l a G u
Practices nfor
s Lesson
t e n 10:
t
REST o
Binding
c StuWizard d
i @
l k arn e10 this
Chapter
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
new project.
Finally, you create another REST interface that uses an HTTP Get Operation.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
1. In the SOAWorkspace application, open the composite.xml file for the HelloBPEL
project.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
The Create Rest Binding window is displayed.@ c Stu
i
b. Set the following fields:
l k arn e this
• Name: helloBPEL_RS ฺku us
a
p sek t o
• Description: RESTe interface
( e
d icen
r i
n le l
3. Add a resource. a
K
a. Click uthelkAddfea rResource
ab (green plus sign) icon.
p a kThe Create
a n sREST Resource dialog box is displayed.
r
e n-t /CreditCheckRequest as a relative path to the resource.
De b.noInsert
c. Click OK.
d. Select the default resource (/) and click the Delete (X) icon.
o n s den
the c
5. Generate a sample payload. (You use this to test @ tulater.)
application
S
i
l k arn e this
a. Deselect the XML check box next to Payload.
b. Select the JSON check box. ฺku us
c. Click the Generate Sample a k
p se
Payload t o
icon.
e e
d icen
i (
n le l
a r
K ulk ferab
p a k ans
e tr
De non-
d. In the Generate Sample Payload window, select the JSON option.
e. Modify the sample values:
• CCNumber: “1234-1234-1234-1234”
• amount: 1000
f. Click the “Select a directory” icon.
a
g. Navigate to the SOA directory.
) has
h. Click the “Create new subdirectory” icon.
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e n-trSampleInput as the subdirectory name.
i. Enter
De j. noClick OK.
k. Highlight the newly created directory and click Select.
You are returned to the Generate Sample Payload window.
l. Verify your work and click OK.
a
You are returned to the REST Operation Binding window. ) has
ฺ c om ฺ
6. Define the response of the REST service. t i o n ide
a. Click the Response tab. t e lla t Gu
b. Deselect No Payload. o n s den
@ c Stu
i
his
c. Enter JSON as the Payload type.
k rnselecttcreditcheck.xsd
aand
k l
d. Click the “Browse for schema file” icon
u us e >
CreditCheckResponse. ฺ
ak e to
e p
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
e. Click OK.
f. Click Generate Sample Payload.
g. Select JSON as the Sample Type.
h. Verify that your sample is similar to the following screenshot: (The sample value may
vary.)
7. Verify your work and click OK to complete the definition of the REST binding.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
Adding a Mediator
8. Create and configure a Mediator component.
a. Add a Mediator to the Component column of the composite overview window.
The Create Mediator window opens.
b. Set the Name to RouteData.
c. Accept the “Define Interface Later” template option.
d. Click OK.
Tasks
1. In the SOAWorkspace application, create a new empty SOA project named CallREST.
The composite.xml file is created and the overview window is opened for editing.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
lk rab and click OK.
6. Select application.wadl
u
areK
You k s
returned ftoethe “Create REST binding” window. The fields are automatically
p a n
a on the WADL file.
epopulatedtrbased
De non-
s a
)h a
m
co eฺ
n ฺ
l a t io uid
s t el nt G
c on tude
a r ni@ this S
k u lk se
p akฺ to u
( d ee ense
r n e ic binding” window.
i “Create lREST
a ab
7. Click OK to close
lkFilesthe l
u
The Localize
K sfedialog r box is displayed.
a k
p -tran
e eDeselect
non
8.
D OK. the Maintain original directory structure for imported files check box and click
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
10. Wire the BPEL process dtoethe REST
e s
nbinding.
i (
n le li c
a r
lk theraBPEL
Defining Activities
u in b Process
KBPELsProcess
11. Openkthe fe for editing.
a
p -tra n
eeCreate
D12. nonand configure an Invoke activity.
a. Add an Invoke activity to the BPEL process.
b. Map the Invoke activity to the helloBPEL partner link.
The Edit Invoke window is displayed.
c. Name the new activity Invoke_helloBPEL.
d. Automatically create input and output messages.
e. Verify your work and click OK.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( e activity
13. Create and configure andAssign
c e ns to set the input message for the REST service.
a. Add an Assign
a r li the Invoke activity.
n activitylebefore
b. Nameuthelk new activity
rab Assign_CreditCard.
K
k the Assign
c. aIn f e
s Editor, map the CCNumber element in the process input variable to the
p
e CCNumber r a n
De d.noMapn-tthe amount
element in the input variable for the REST service.
element in the process input variable to the amount element in the
input variable for the REST service.
e. Click OK.
14. Create and configure an Assign activity to set the output message for the BPEL process.
a. Add an Assign activity after the Invoke activity.
b. Name the new activity Assign_Reply.
c. In the Assign Editor, map the status element in the REST service output variable to
the status element of the output variable for the BPEL process.
d. Verify your work and click OK.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
Tasks
1. Deploy the CallREST composite application project to IntegratedWebLogicServer.
Remember to select the “Overwrite any existing composites with the same revision ID”
check box.
2. In Enterprise Manager, navigate to the test page for the CallREST project.
a. Open Enterprise Manager.
b. Navigate to the CallREST project.
c. On the CallREST home page, click Test. a
The test page opens. ) has
ฺ c om ฺ
d. On the Test Web Service page, scroll down to the Input Arguments section to the
t i o n ide
Request tab. Expand payload and enter the following values:
• CCNumber: 1234-1234-1234-1234
t e lla t Gu
• amount: 1000 o n s den
e. Click Test Web Service. @ c Stu
i
The Response tab is displayed.
l k arn e this
ฺ ku o us
f. Verify that the status value returned is VALID, as shown in the following screenshot:
k
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
g. On the Response tab, click the Launch Message Flow Trace link.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
your ability to repeat most of the same tasks as you did in Practice 10-1.
Tasks
a
has
2. Define an additional REST interface for the HelloBPEL composite.
a. Right-click the BPEL process interface and select “Expose as REST.” )
The Create Rest Binding window is displayed. ฺ c om ฺ
b. Set the following fields: t i o n ide
• Name: helloBPEL_Get t e lla t Gu
o n s den
• Description: REST GET interface
@ c Stu
i
3. Add a resource. l k arn e this
a. Click the “Add a Resource”a k ฺku to us
icon.
e
The Create REST Resourcee p dialogsebox is displayed.
i ( d icaseanrelative path to the resource.
a r n le l
b. Insert /GetCreditCheck
c. Click u
OK.lk rab
k K
d. Select s fe resource (/) and click the Delete (X) button.
the default
a
ep n-tra n
D4.e Add
noan operation binding.
a. Click the Add (+) icon and select “Add operation binding.”
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
5. Define the response of the REST service.
@ c Stu
a. Click the Response tab.
i
rn this
l k a
b. Deselect the XML Payload.
ฺ k u use
e p ak e to
c. Specify the Payload type JSON.
d. Click the “Browse for
i ( d c nsicon and select creditcheck.xsd >
eschemaefile”
a r n le li
CreditCheckResponse.
K ulk ferab
p a k ans
e tr
De non-
e. Click OK.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
Adding a Mediator
p ak andraconfigure
7. eCreate n s a Mediator component.
De a.noAddn-tanother Mediator to the Component column of the composite overview window.
The Create Mediator window opens.
b. Set the Name to RouteGETData.
c. Accept the “Define Interface Later” template option.
d. Click OK.
8. Wire the Mediator component to the REST interface (helloBPEL_Get) and to the HelloBPEL
process.
h. Map the CCNumber element in the Source column to the CCNumber element in the
target column.
i. Map the amount element in the Source column to the amount element in the target
column.
j. Save your work and close the .xqy file tab.
k. Close the XQuery mapper and return to the RouteData.mplan window.
a
has
10. Configure the Reply transformation.
)
a. In the Synchronous Reply section of the routing rule, click the “Select an existing
mapper file or create a new one” icon.
ฺ c om ฺ
i o n ide
b. In the Reply Transformation Map dialog box, click the Create Mapping icon.
t
c. Again, try using the XQuery mapper instead of XSLT.
t e lla t Gu
o n
The Create Transformation Map dialog box is displayed.
s den
@ c Stu
i
d. Accept the default file name that is supplied. Click OK.
k arn e this
e. Click OK to close the Reply Transformation Map dialog box.
l
The XQuery Mapper window opens.k ฺ ku o us
p a et
f. Map the status element in the Source column to the status element in the target
e
column.
i ( de icens
r n le l
g. Save your work, and close the .xqy file tab.
a
ulk ferab
h. In the JDeveloper window, close the RouteGETData.mplan window.
K
p a k ans
eeDeployn - tr HelloBPEL project to IntegratedWebLogicServer.
D11. no
the
a
) has
ฺ c om ฺ
t i o n ide
e l l a G u
Practices nfort
s Lesson e t
n 11: New
Adapters o
c and tuMFT d
i @ S
l k arn e11 this
Chapter
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
a
) has
ฺ c om ฺ
t i o n ide
e l l a G u
Practices nfor
s Lesson
t e n 12:
t
Templates o
c and d
tu BPEL
i @ S
l k arn e this
Subprocesses
k ฺ ku Chapter
o us12
e a
p se t
( e
d icen
r i
n le l
a
K ulk ferab
p a k ans
e tr
De non-
Designer.
This practice includes the following tasks:
• Creating SOA composite templates
• Creating service component templates
• Creating BPEL scope templates
• Creating BPEL inline and stand-alone subprocesses
• Managing BPEL Templates
a
) has
Assumptions
ฺ c
This lab assumes that you have completed Practice 4-3 and that the CustomerProfileom ฺ
composite has been created. t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
Tasks
1. In JDeveloper, open the FaultLogger project in the SOAWorkspace and the FaultLogger
composite.xml file in the composite editor. Inspect this composite and note its structure.
2. Use this project as the basis for creating a new SOA composite template. Then use this
template as the basis for a new SOA composite.
• Right-click the project home FaultLogger and select Create SOA Template.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
3. On the Specify Template Information screen, click the “Browse Locations” button to choose
a different location to store the template. This opens the Select Location dialog box.
4. Change the directory of where to store the template to:
/home/oracle/NewFeatures12c/SOA/templates
5. Note: Information Only – Do not do the following, because it will clear your settings
for the File System. Choose to store the template in the Design-Time SOA-MDS. On
selecting SOA-MDS, you see the folders that exist under the apps directory. You can save
your template to one of the existing folders. However, you cannot create or manage folders
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
and templates in this window. You will see how to do that later in the practice.
Instead for this practice, click OK to accept the settings for the File System.
6. You are returned to the Specify Template Information page. Notice that the “Save in” field
has been updated to reflect your selection.
Click Next.
7. You are not adding test suites or business indicator measurements to the template, so a
accept the selected files and click Finish to complete creation of the template.
) has
8. To view the newly created template, go to Tools > Preferences > SOA >nTemplates.ฺ com eฺThere,
you can see and manage your templates. Return to this a little later.
l a t io uid
Click Cancel to close the Preferences window. s t el nt G
c on tude
9. Close the FaultLogger window that is open inrthe editor. is S
ni@
u l k se th
a
10. Create a new SOA Composite based a k ฺkon thetotemplate
u you just created.
a. From the File Menu, e
p e Choose SOA project for the project type.
e Newn>sProject.
select
Click OK. i ( d ic e
r n l e l
b. Name the
u lkaprojectraLocalLogger
b and click Next.
K the SOA
c. Select
k s fe Template option. Confirm that the template you just created,
a
ed.p Click n
a is selected.
FaultLogger,
r
e - t
D non Finish.
A new composite is created and has the same structure and artifacts as your template.
You can now edit this new composite as needed.
In this practice, you create a template based on a single component, and then use that template
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
Tasks
1. You have decided to store this and other templates in the Design-Time SOA MDS.
• Select the Resources window. If it is not visible, select Windows > Resources.
• Expand IDE connections and locate the SOA-MDS connection.
• Expand that and then expand SOA_DesignTimeRepository.
• Right-click apps and create a new folder named Templates. a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
2. With the LocalLogger composite still open in the editor window, right-click the BPEL
process LogFault and select Create Component Template.
s a
)ha
m
co eฺ
n ฺ
Note that the selection field contains the location where the template is stored.
4. Click OK to return to the Create Component Template dialog box. l a t io uid
s t el nt G
c
5. Notice that you can choose a different icon for your template
de a meaningful
on andtuenter
description. Change the name to LogFaultTemplate r ni@ thand S my first BPEL
is enter
template for the description.
a
lk se
k u
Click Next.
p a kฺ to u
( d ee ense
6. Choose additional r n i to bundle.
files
e l ic
JDeveloper lunderstands l
ka rabthe dependences between different files, so some files are already
selected
u
Kand cannotfe be deselected without breaking the component template. You can
a k n s
e eInpthisnexercise,
choose to
- tra you files
add more to the template if you need to.
D no will simply accept what is selected and click Finish.
7. Return to Tools > Preferences > SOA > Templates to confirm that your new template was
added.
Close the dialog box when you are satisfied.
9. Right-click the Components swim lane and select Insert > Component Template.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
13. Drag the LogFaultTemplate icon to the Componentsi
rn thislane in the composite editor.
swim
k a
ฺ k ul use
exists, you see a warninge e p k sappears.
14. The Template Information dialogabox
indicator. e to Note that because this component already
i ( d icen
a r n le l
K ulk ferab
p a k ans
ee on-tr
D15. n can still add the component. Click Next.
You
In the Resolve Conflicts window, you can skip or override conflicts in the composite.
You are NOT going to actually add this template, so click Cancel to exit.
You have seen that you can use a component template in the same or different project
within the same application, making the reuse of components easier.
Tasks
1. Open the CustomerProfile composite in the composite editor. Open the BPEL process
RecordFault.
2. Verify the scope after the receiveInput is configured as follows:
a. Scope name is: LogFaultToJMS.
b. The assign and invoke activities match the screenshot below:
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e pa stoethet PostFaultMsg Partner Link. Check to make
c. The InvJMS activity iseconnected
i (
sure that the invoke
n the local variable.
dactivityiciseusing
arn able l
l k
k Ku sfer
e p a ran
t
De non-
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
Verify the AssignFaultInfo activity mapping:
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
Click OK and click Next. o n s den
@ c Stu
i
n this so click Next.
5. You are not converting the input variable k a rlocal variable,
toa
k l e so click Next.
u anyuchanges,
s
ฺ
6. View the Partner Link. You are not making
akto Bundle”towindow.
7. Expand the Adapters in thee p
“Files e
s selected. You decide to include the other
( de iceisnalready
Notice that the PostFaultMsg_jms
i
adapter as well,
a r n itlemight
because l be needed when used as the basis for a template.
K ulk ferab
Select WriteFaultAsFile_file.jca and click Finish.
p k
a ran s
e t
De non-
Once you click OK in the confirmation dialog box, the new template is created.
Do you see the template that you just created? If yes, then continue.
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
u lkCustomraActivity
11. In the Create b from Template window, notice the entries that will be
K
k ans
included. f e
p a
e tr
De non-
12. You are now prompted to resolve conflicts. For this practice, you simply take the default
selections to skip. However, you can choose to override the local files with the template, if
needed.
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
s a
)h a
m
co eฺ
n ฺ
l a t io uid
s t el nt G
c on tude
a r ni@ this S
k u lk se
p a kฺ to u
Click Next.
( d ee ense
r n i
e l ic
lkaBindings l
abscreen, you can choose to bind the template variable to a different
K u
13. On the Variable
f e r
p a k Youanares not going to do so, so click Finish.
variable.
e tr
De non-
14. Save your work and close all open editor windows.
You have seen how to create and reuse a scope template.
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
Tasks
1. Open the LocalLogger composite in the composite editor.
2. Right-click the Components swim lane and select Insert > Subprocess.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
s den
3. Name the process NotifyInterestedParties. con
i @ S tu
Note that you can choose where to save this r
a n this
subprocess. You can just use the default
location. k
ul use
ฺ k
e p ak e to
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
Click OK.
The subprocess is created and is added to the composite diagram.
4. Right-click and select Edit to open the subprocess in the BPEL editor.
You now want to add an event publication and write the fault to a flat file to keep a record of
the fault.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
9. Save your work and close the NotifyInterestedParties sbpel editor.
n
10. Return to the LocalLogger composite editor. Edit the BPEL
o sprocess
d e n
LogFault.
11. Add the subprocess to the BPEL activity flow. i@
c Stu
a. Open the Subprocesses area of the Component
l k his
arn ewindow
t
b. Drag the new subprocess icon toฺk u beforeuthe
just s end of the BPEL process.
ak
p se t o
e e
d icen
i (
n le l
a r
K ulk ferab
p a k ans
e tr
De non-
a
) has
13. Set the value for the PubEvent_InputVariable ฺ c om ฺ
t i o n ide
a. Click Value, and then click the button with the ellipsis (...)
t e l la t Gu
b. Select Expression, and then click the Expression Buildersicon.
o n d e n
c payload
c. Expand to the description string element of the faultInfo
@ S tu of the BPEL process
inputVariable. i is
l
d. Click the Insert Into Expression button.k arncanealsothadd
You some static text if you wish, as
in the screenshot below. ฺ k u us
e. Click OK. e p ak e to
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
14. Set the values for the other two variables, as shown:
a
) has
ฺ c om ฺ
t i o n ide
lla teditor.
eLogFault G u
15. Click OK. The new call is added. Save your work and closes
n t
the
e n
o
c Stu d
i
16. In the composite editor, add a new, one-way BPEL @
rn forththeisinput.
process named NotifyPartners. Do
k a
ฺ k ul use
not expose it as a SOAP service. Use faultinfo
e p ak e to
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
o n s den
@ c Stu
19. Save your work. Do not close the NotifyPartners i
rn theditor.
BPEL is
l k a e
k ฺ ku o us
20. You will now create a new inline subprocess.
e p a eStructuret
From the BPEL toolbar, select
d e en Propertys > Inline Subprocesses.
n i ( l ic
r l e
u lka rab
k K sfe
a
ep n-tran
e
D no
21. Highlight the Inline Subprocesses folder and click the green plus sign to create a new inline
subprocess.
a
) has
ฺ c om ฺ
a. To edit the subprocess, you may need to open it in your BPEL editor.
t i o n If so, iclick
d e this
e la nt G
new subprocess after selecting it from the drop-down menu las shown u
below:
s t
c on tude
a r ni@ this S
k u lk se
a ฺ to u
kfaultInfoVar
e e p
b. Create a new variable named
s e schema. as an Element, based on the
faultInfo Type(in
i d lice
the n
FaultInfo
r n
u lka rable
k K sfe
a
ep n-tran
e
D no
Note that you can also add Partner Links, Correlation sets, and other activities as
appropriate. Close the dialog boxes when you are done.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
25. Your BPEL process must now look like the following:
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
27. From the Tools menu, select Preferences > SOA > Templates.
28. You see all your previously created templates displayed. In this window, you can delete
existing templates and add new file locations containing templates, which can then be used
in JDeveloper.
29. If you right-click in the window, you can choose from the pop-up menu and filter by template
type.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
a
) has
ฺ c om ฺ
t i o n ide
e l l a G u
Additionalns t
Practices: e t
n Sharing
o
c Stin
Functionality d
u Oracle SOA
i @
l k arn e this
Suite
k ฺ ku Chapter
o us13
e a
p se t
( e
d icen
r i
n le l
a
K ulk ferab
p a k ans
e tr
De non-
Design Time Repository. You create a project, and use the BPEL component template to
accelerate development of the project. You then modify the project to include the creation and
calling of a BPEL in-line subprocess. Finally, you deploy and test the finished project.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
2. Navigate to /home/oracle/NewFeatures12c/SOA/scripts/SQL.
3. Select JDBcreate_waitingorders.sql.
The file is opened in a SQL worksheet.
a
has
4. Click the Run Script icon.
)
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
The Select Connection dialog box is displayed. i@
c Stu
l k arn e this
5. Choose an existing connection. If k ku o uhas
a ฺconnection
s not already been created, click the
e
“Create a new connection” icon. a
p Otherwise, t
e you may skip to steps 10 and 11.
e n s
r n i (dconnection”
Click the “Create a new
l i ce icon.
u lka rable
k K sfe
a
ep n-tran
e
D no
7. Ensure that the default Java DB (Derby) settings match the following:
• CONN_HOSTNAME: localhost
• CONN_JDBCPORT: 1527
• Database Name: soainfra
• Library: Java DB JDBC Driver
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
9. Click OK.
13. Run the DemoCommunitySeedServlet within the application that you just deployed to seed
the demo users to the internal LDAP database.
Note: The deployment script also added an icon to your desktop to access the newly
deployed application.
a. On your desktop, right-click the DemoCommunitySeedServlet icon and select Open.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
ar e this
An Untrusted Application Launcher promptnmay be displayed.
b. Click Launch Away to proceed. l k
u us
A browser window is opened k toฺk
e p a e to
nsappears.
http://localhost:7101/integration/SOADemoCommunity/DemoCommunitySeedServlet.
( de iceform
The Seed Demo Community
i
a r
c. Click the Submit n button.
l e l
K ulk ferab
p a k ans
e tr
De non-
A confirmation page lists the users and groups that were added.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
f. Select the application server IntegratedWebLogicServer.
g. Click Finish.
After a few seconds, the Oracle Deployment Configuration window appears.
h. Click Deploy.
i. In the Deployment – Log window, verify that the deployment is successful.
a
has
17. Test the Approval composite application.
On another web browser tab, open the Worklist application: )
ฺ c om ฺ
a. Access the Oracle BPM Worklist application: [DO NOT use localhost.]
t i o n ide
t e lla t Gu
http://soa12c.example.com:7101/integration/worklistapp
o n s den
b. Log in to the application as jcooper with the password welcome1.
c Stu
c. In EM FMW Control, on the “Approval [1.0]” home page, click the Test button.
@
i
Request tab. l k arn e this
d. On the Test Web Service page, scroll down to the Input Arguments section on the
k ฺ ku o us
e. Use the Browse button to replace the sample XML data with the contents of the
e p a et
de icens
/home/oracle/NewFeatures12c/SOA/files/resources/sample_input/pro
i (
cessOrder.xml file.
n le l
a r
f. Click Test Web Service.
K ulk ferab
g. Switch to the Worklist application tab.
p a k ans
h. Click the Refresh icon.
e tr
De non-
i. Click the Manual Approval task entry.
The order details are displayed in the lower pane.
j. Click Approve.
k. Return to the Enterprise Manager tab.
l. On the Response tab, click the Launch Flow Trace link and verify that the composite
instance has completed.
Tasks
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
b. Expand the SOA-MDS
i ( de folder
c e nsright-click SOA_DesignTimeRepository.
and
a r
c. In the context l e li “Import from Jar.”
nmenu, select
K ulk ferab
p a k ans
e tr
De non-
Creating a Project
2. In the SOAWorkspace application, create a new empty SOA project named OrderFlow.
The composite.xml file is created and the overview window is opened for editing. a
) has
Adding a BPEL Component from a Template
ฺ c om ฺ
3. Add a BPEL Component from a template.
t i o n ide
t e lla t Gu and select
a. In the component overview window, right-click in the Components swimlane
Insert > Component Template.
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
ulk fComponent
TheKChoose e rab Template dialog box appears.
p a k Ifathe n sComponent Template option does not appear, stop the Integrated
r
e n-t Server. Close and reopen JDeveloper. Restart the Integrated WebLogic
Note:
De noWebLogic
Server. You can resume your work while it is restarting.
b. Select ProcessOrder and click OK.
The “Create SOA Component from Component Template” dialog box appears.
c. Examine the template entries and click Finish.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
The composite overview window is updated.i@c S tu
d. Verify your project and save your work.ar
n this
l k
u use
ฺ k
e p ak e to
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
Note: Expect many error messages as you save. Recall that JDeveloper performs a
validation check each time you save. These errors indicate that the project is not fully
configured, which is expected at this point.
6. In the Composite Editor, wire the ProcessOrder BPEL process to the UpdateStatus external
reference.
7. Open the BPEL process for editing.
8. Verify that UpdateStatus is shown in the Partner Links column and save your work.
Invoke_Update_update_inputVariable.
e. Map the outputVariable element status to the status element of
Invoke_Update_update_inputVariable.
f. Verify and save your work.
a
) has
d. Click OK. ฺ c om ฺ
t i o n ide
A call activity is displayed in the process.
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
Note: The subprocess is also displayed in the Palette under Subprocesses. You can
see and edit the definition of the subprocess when switching from the Main Process to
the subprocess on top of the BPEL editor. All partner links that are available in the
Main Process are displayed, in case you want to add another Invoke. Changes to the
subprocess are reflected in every call.
a
) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
b. Drag the updateOrderStatusSPฺk u usfrom the Component Palette to the BPEL
p k subprocess
to just below the GetApproval activity.
aof the eIf activity,
process, within the If branch
e
de icens
i (
n le l
a r
K ulk ferab
p a k ans
e tr
De non-
A new call activity is added to the process. That is all that needs to happen to invoke
the subprocess and have the order status updated to whatever value is returned by the
call to the approval process (APPROVED or REJECTED).
a
14. Save your work. ) has
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-
Assumptions
This practice assumes that you have completed Practices A-1 and A-2 successfully.
Tasks
Unauthorized reproduction or distribution prohibitedฺ Copyright© 2016, Oracle and/or its affiliatesฺ
k ฺ ku o us
b. Log in to the application as jcooper with the password welcome1.
p a et
4. On a second web browser tab, open the Oracle Enterprise Manager Test page.
e
( de icens
a. Access Enterprise Manager at http://localhost:7101/em.
i
a r n le l
b. In the Target Navigation pane, expand the SOA > soa-infra > default nodes in the tree.
K ulk ferab
Click the “OrderFlow [1.0]” link.
p a k ans
c. On the “OrderFlow [1.0]” home page, click the Test button.
e tr
De non-
d. On the Test Web Service page, scroll down to the Input Arguments section to the
Request tab.
e. Use the Browse button to replace the sample XML data with the contents of the
/home/oracle/NewFeatures12c/SOA/files/resources/sample_input/pro
cessOrder.xml file.
DO NOT click Test Web Service just yet.
5. Execute the following steps (quickly in sequence) for testing:
a. In JDeveloper, with the JDBlist_waitingorders.sql tab selected, click Run
Script.
Note: If it took more than 30 seconds to complete steps b–f, your results in step g will vary.
The status field may read ‘VALID.’ Enterprise Manager will report a test failure because the
test will have timed out.
a
has
For the purpose of this exercise, you can ignore this and simply try to run the test scenario
again. )
ฺ c om ฺ
t i o n ide
t e lla t Gu
o n s den
@ c Stu
i
l k arn e this
k ฺ ku o us
e p a et
i ( de icens
a r n le l
K ulk ferab
p a k ans
e tr
De non-