oracle soa overview

43
Presenter Name Date DD/MM/YYYY Oracle SOA Suite Overview Presenter : Sai Narayan Date : 2-July-08

Upload: sai-narayan

Post on 12-Nov-2014

1.496 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Oracle SOA Overview

Presenter Name

Date DD/MM/YYYY

Oracle SOA Suite Overview

Presenter : Sai NarayanDate : 2-July-08

Page 2: Oracle SOA Overview

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

Page 3: Oracle SOA Overview

Oracle Fusion Middleware – Key Solutions

OracleJDeveloper

OraclePortal/WebCenter Suite

OracleBI

OracleSOA Suite

OracleApplication Server

OracleEnterprise Manager

OracleIdentity Management

Page 4: Oracle SOA Overview

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 Consumer Service Provider

Service Request

Service Response

Page 5: Oracle SOA Overview

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

Page 6: Oracle SOA Overview

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

Page 7: Oracle SOA Overview

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

Page 8: Oracle SOA Overview

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

Page 9: Oracle SOA Overview

SOAP-Example

• Get stock price request

• Request has stock name parameter, response has stock price

Request Response

Page 10: Oracle SOA Overview

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

Page 11: Oracle SOA Overview

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

Page 12: Oracle SOA Overview

The Oracle SOA Platform

Page 13: Oracle SOA Overview

Benefits of SOA

• Greater inter-operability

• Increased re-use

• More agile business processes

• Improved visibility

• Reduced maintenance costs

• Compliance and governance

Page 14: Oracle SOA Overview

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

Page 15: Oracle SOA Overview

Cross Application Process Orchestration – BPEL Process Manager

Page 16: Oracle SOA Overview

BPEL By Example

Page 17: Oracle SOA Overview

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

Page 18: Oracle SOA Overview

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

Page 19: Oracle SOA Overview

ESB – Virtualize End Points

• Service consumer do not need to talk to proprietory protocols

Page 20: Oracle SOA Overview

ESB – Virtualize End Points – Introspect target systems

Page 21: Oracle SOA Overview

ESB – Transform

Page 22: Oracle SOA Overview

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

Page 23: Oracle SOA Overview

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

Page 24: Oracle SOA Overview

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

Page 25: Oracle SOA Overview

Adaptor Services - Example

• Example: Using the File Adaptor

Page 26: Oracle SOA Overview

Adaptors for Oracle SOA Suite

• 300+ adaptors exist

Page 27: Oracle SOA Overview

Oracle Apps Adaptor – Design Time Introspection

Page 28: Oracle SOA Overview

Oracle Apps Integration Interfaces Overview

• Open Interface Tables/Concurrent Programs

• Views

• PL/SQL APIs

• Business Events

• XML Gateway

• eCommerce Gateway

Page 29: Oracle SOA Overview

Oracle Apps Integration Interfaces Overview

Page 30: Oracle SOA Overview

Open Interface Tables

Page 31: Oracle SOA Overview

Concurrent Programs

Page 32: Oracle SOA Overview

PL/SQL API

Page 33: Oracle SOA Overview

Biz Events - Inbound

Page 34: Oracle SOA Overview

Biz Events - Outbound

Page 35: Oracle SOA Overview

XML Gateway – Inbound - Design

Page 36: Oracle SOA Overview

XML Gateway – Inbound – Run time

Page 37: Oracle SOA Overview

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

Page 38: Oracle SOA Overview

Development/Technical Environment Overview

• JDeveloper: Version 10.1.3.2 upward

• Used to develop BPEL process and ESB services

Page 39: Oracle SOA Overview

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

Page 40: Oracle SOA Overview

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

Page 41: Oracle SOA Overview

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)

Page 42: Oracle SOA Overview

BPEL Demo Hello World

Page 43: Oracle SOA Overview

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.ht

ml• Oracle Integration Repository

– http://irep.oracle.com/index.html• Oracle E-Business Integration Development Guide

– http://www.oracle.com/partners/home/bi/global/integration/unauth/prod_int_guides_11_5_10.html