PacktLib: Oracle SOA Suite 11g Developer's Cookbook

Oracle SOA Suite 11 Developer's Cookbook


About the Authors


About the Reviewer


Building an SOA Suite Cluster


Gathering configuration information

Preparing the operating system

Preparing the database

Preparing the network

Using the Metadata Service to Share XML Artifacts


Creating a file-based MDS repository for JDeveloper

Creating Mediator using a WSDL in MDS

Creating Mediator that subscribes to EDL in MDS

Creating an external reference using a WSDL in MDS

Referencing Schematron in MDS for validation

Referencing a fault policy deployed to MDS

Deploying MDS artifacts to the SOA infrastructure

Exporting an MDS partition to the filesystem

Deleting XML artifacts from SOA infra MDS

Working with Transactions


Modifying a BPEL process to use the callers transaction context

Committing a transaction

Aborting a transaction

Catching rollback faults

Applying reversing or compensating transactions

Mapping Data


Ignoring missing elements with XSLT

Ignoring missing elements with Assign

Creating target elements in Assign

Array processing with XSLT

Array processing with BPEL Assign

Overriding mapping of EJB data to XML

Ignoring a Java property

Creating a wrapper element for a Java collection or array

Handling an abstract class

Composite Messaging Patterns


Message aggregation within a composite

Using dynamic partner links with BPEL 2.0

Singleton composite

Scheduling services

Scheduling a service within a composite

Deleting a scheduled service within a composite

OSB Messaging Patterns


Dynamic binding using OSB

Splitting out messages using OSB

Dynamic Split-Join in OSB

Fault handling in dynamic Split-Join in OSB

Integrating OSB with JSON


Converting between XML and JSON

Invoking a JSON service from OSB

Dynamically binding to a JSON service in OSB

Exposing a proxy service as a JSON service

Compressed File Adapter Patterns


Implement GZIP wrapper for OSB

Reading compressed files with OSB

Writing compressed files with OSB

Integrating Java with SOA Suite


Creating a custom XPath function for SOA Suite

Calling an EJB from an SOA composite

Using a Spring bean in an SOA composite

Using an EJB reference in a Spring component

Accessing the SOA runtime environment from BPEL

Securing Composites and Calling Secure Web Services


Restricting a composite to authenticated users with HTTP Basic Security

Creating a new, group-based authorization policy

Restricting a composite to authorized users

Adding keys to a credential store

Invoking an HTTP Basic secured web service

Configuring the Identity Service


Configuring the SOA Identity service to use Oracle Internet Directory

Configuring the SOA Identity service to use Oracle Virtual Directory

Configuring the SOA Identity service to use Active Directory

Configuring the SOA Identity service to use Sun iPlanet server

Configuring OSB to Use Foreign JMS Queues


Creating an OSB proxy service to consume JMS messages from OC4J

Creating an OSB business service to publish JMS messages to OC4J

Using WebLogic JMS Store-and-Forward for inter-domain messaging

Configuring OSB to consume JMS messages from JBoss Application Server 5.1

Monitoring and Management


Capturing a composite completion status

Monitoring message throughput in real time

Deploy Monitor Express to BAM

Configuring BAM Adapter

Configuring a BPEL process to report the status to BAM Monitor Express