You are on page 1of 43

Oracle SOA Suite Overview

Presenter : Sai Narayan


Date : 2-July-08

Presenter Name
Date DD/MM/YYYY
Scope

• SOA overview
• Common terminologies around SOA
• BPEL/ESB
• Adapter Services
• Oracle E-Business integration and SOA
• Technical environment
• Demo using JDev/BPEL/Oracle AS
• References and source of more information
Oracle Fusion Middleware – Key Solutions

Oracle
Portal/ Oracle
WebCenter Suite Enterprise
Manager
Oracle Oracle
JDeveloper BI
Oracle
Oracle Identity
SOA Suite Management
Oracle
Application Server
What is SOA ?
• Service Oriented Architecture (SOA)
– An architectural style for integrating loosely coupled interacting software
services
– A set of components (services) that can be invoked
– Enabled through a set of standards

Service Request
Service Consumer Service Provider
Service Response
What is a Service ?
• Represents a unit of work invoked as part of business process
• Communicates with clients through standard protocols and technologies
• Performs a business function (such as, validate credit card) and can be
– A subset of an EIS system implementation
– A part of an application module
– A web service implementation
What is a Web Service ?
• A self-describing business function
• Refers to a standard set of platform-independent messaging protocols
(SOAP, HTTP, JMS)
• Allows connection between services from any web connected device
• Exchanges data and functionality in XML format
Web Service Standards
• The Internet standards that compose web services
– WSDL used to describe the web service
– UDDI registry used to publish and query web service
– SOAP used to invoke the web service

• File format standards


– XML: eXtensible Markup Language
– XSD: XML Schema Definition
– XSL: eXtensible Style Language
– XSLT: eXtensible Style Language Transformation
– XPath: XML path
SOAP-XML Messaging for Web Services
• Is an XML based protocol for data exchange
• Represents request and response as XML message
• Uses http and other protocols at transport layer
• Supports data encoding and literal styles
• Hides details of implementation
• Works with
– Any programming language
– Any hardware or software platform
SOAP-Example
• Get stock price request
• Request has stock name parameter, response has stock price
Request Response
What is WSDL ?
• stands for Web Services Description Language
• written in XML
• an XML document
• used to describe Web services
• used to locate Web services
• Defines the messages and operations of a web service in XML
What is UDDI ?
• UDDI is a platform-independent framework for describing services,
discovering businesses, and integrating business services by using the
Internet.
• UDDI stands for Universal Description, Discovery and Integration
• UDDI is a directory for storing information about web services
• UDDI is a directory of web service interfaces described by WSDL
• UDDI communicates via SOAP
The Oracle SOA Platform
Benefits of SOA
• Greater inter-operability
• Increased re-use
• More agile business processes
• Improved visibility
• Reduced maintenance costs
• Compliance and governance
Introduction to BPEL
• A workflow and process flow mark up language
• Used to orchestrate multiple discrete services into an end to end business
process
• Create BPEL Services for
– A synchronous service
– An Asynchronous service
– Empty service
Cross Application Process Orchestration –
BPEL Process Manager
BPEL By Example
Developing a BPEL Service
• A BPEL Process is a service that may be invoked by other services
• A BPEL Process can be developed
– Using Oracle BPEL Designer
– Editing BPEL elements with a text editor
• Using BPEL Designer templates, you can start creating
– A synchronous service
– An asyncronous service
– An empty service
Routing, Transformation, Connectivity –
Enterprise Service Bus
• Virtualize end points – from resources to services
• Transform: Convert data to target formats
• Route: Reliably transport and route data over a variety of protocols
• Expose everything as a web service
ESB – Virtualize End Points
• Service consumer do not need to talk to proprietory protocols
ESB – Virtualize End Points – Introspect target systems
ESB – Transform
ESB – Routing
• Content based
– If total price > 500, route to fedex
• Header based
– If message type = Order, route to fulfillment
• Standard XPATH to define routing expressions
• Graphical expression builder
• Routing rules can be altered at any time
When to use ESB / BPEL
• Both ESB and BPEL are part of the SOA Suite
• ESB routes messages to multiple destinations based on payload
• ESB is good for transformations with simple or no business rules
• ESB footprint, costs and performance overheads are smaller than BPEL
• BPEL has much more functionality and allows implementation of complex
business process logic
• BPEL for business process orchestration , ESB for integration
• BPEL allows for human workflow tasks and notifications
Adaptor Services
• No Coding Required
• Service enable existing data sources
• Provide connectivity to many data sources
• Three types
– Technology
– Package application
– Legacy
• Examples:
– File Adapter
– FTP Adapter
– Database Adapter
– OA Adapter
Adaptor Services - Example
• Example: Using the File Adaptor
Adaptors for Oracle SOA Suite
• 300+ adaptors exist
Oracle Apps Adaptor – Design Time Introspection
Oracle Apps Integration Interfaces Overview
• Open Interface Tables/Concurrent Programs
• Views
• PL/SQL APIs
• Business Events
• XML Gateway
• eCommerce Gateway
Oracle Apps Integration Interfaces Overview
Open Interface Tables
Concurrent Programs
PL/SQL API
Biz Events - Inbound
Biz Events - Outbound
XML Gateway – Inbound - Design
XML Gateway – Inbound – Run time
Oracle E-Business Integration using SOA - Notes
• Lookups can be done from BPEL or ESB using the DB Adapter query
service to get values to pass to concurrent program parameters
• Application Context is passed to Oracle Apps concurrent programs
• Business Events – 11i10 has 915 preconfigured business events which can
be used for integration
• XML Gateway transactions available for Procurement, Sales, WIP,
Planning, Financials, Inventory
• More information on available pre-configured integration points can be found
at http://irep.oracle.com
Development/Technical Environment Overview
• JDeveloper: Version 10.1.3.2 upward
• Used to develop BPEL process and ESB services
Oracle ADF
• Application Development Framework
• Design time part of JDeveloper. It simplifies application development by
minimizing coding.
• Oracle ADF is based on MVC design pattern
– Model: handles interaction with data sources and runs business logic
– View: handles application user interface
– Controller: manages application flow
• Run time part of Oracle Application Server
Oracle Application Server OC4J
• What is OC4J ?
– Oracle Application Server Containers For J2EE
– J2EE environment
– Written entirely in Java
– OC4J is J2EE certified
• What runs on OC4J?
– Oracle SOA Suite
• BPEL PM Server
• ESB Server
– E-Business Suite Application Server
– WebCenter
– J2EE applications and web services
Oracle Application Server Control
• Web based console for admin and real time performance monitoring of
Oracle AS
• Used for
– Deploying applications and services to Oracle AS
– Test web services
– Manage application services (start/stop/monitor components)
BPEL Demo Hello World
References/Additional information sources
• Online tutorials on WSDL, SOAP etc
– http://www.w3schools.com/
• Best Practice Center for Oracle E-Business and Fusion Middleware
– http://www.oracle.com/technology/tech/fmw4apps/ebs/index.html
• E-Business Suite Documentation
– http://www.oracle.com/technology/documentation/applications.html
• Oracle Integration Adapters
– http://www.oracle.com/technology/products/integration/adapters/index.html
• Oracle Integration Repository
– http://irep.oracle.com/index.html
• Oracle E-Business Integration Development Guide
– http://www.oracle.com/p
artners/home/bi/global/integration/unauth/prod_int_guides_11_5_10.html

You might also like