1 / 22

SCA and WS-BPEL Martin Chapman Oracle

www.oasis-open.org. SCA and WS-BPEL Martin Chapman Oracle. www.oasis-open.org. What is SCA What is WS-BPEL How SCA and WS-BPEL fit SCA WS-BPEL Spec. What is SCA?. Service Component Architecture Developed by Open SOA Consortium Plug and Play Components

mforsberg
Download Presentation

SCA and WS-BPEL Martin Chapman Oracle

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. www.oasis-open.org SCA and WS-BPELMartin ChapmanOracle

  2. www.oasis-open.org • What is SCA • What is WS-BPEL • How SCA and WS-BPEL fit • SCA WS-BPEL Spec

  3. What is SCA? • Service Component Architecture • Developed by Open SOA Consortium • Plug and Play Components • XML definitions of components and assemblies • Multiple implementation languages • Recursive assembly of components • Deployment of assemblies

  4. SCA Core Concepts • Assembly Model • how to define structure of composite applications • Client & Implementation specifications • how to write business services in particular languages • Java, C++, BPEL, PHP…. • Binding specifications • how to use access methods • Web services, JMS, RMI-IIOP, REST… • Policy Framework • how to add infrastructure services to solutions • Security, Transactions, Reliable messaging…

  5. SCA Core Concepts Reference Service - Java interface - Java interface - WSDL PortType - WSDL PortType Properties Composite Property setting Component Component B Service Reference A Wire Wire Wire Binding Binding Policies Web Service Web Service SCA SCA JCA JCA JMS JMS SLSB SLSB …

  6. SCA: What is it NOT • Does not model individual workflows or ordering of service invocations • use BPEL or other workflow languages • Is not Web services • SCA can use / may use Web services, but can also build solutions with no Web services content • Is not tied to a specific runtime environment • distributed, heterogeneous, large, small • Does not force use of specific programming languages and technologies • aims to encompass many languages, technologies

  7. What is WS-BPEL • An orchestration language for Business processes • Interaction with Partners via WSDL • Process Control Flow • Ordering of service invocations • An OASIS Standard

  8. Variables WSDL Message Partner Links Basic Activities receive exit 42 reply throw XML Schema Type XML Schema Element invoke rethrow assign wait validate compensate Partner Link Type MyProcess Port Type 1 Port Type 2 empty compensateScope receive extensionActivity invoke receive Property 1 invoke Structured Activities Handlers Property 2 flow pick invoke event handler fault handler forEach sequence event handler fault handler Properties Correlation Sets if-else while compensation handler termination handler partner link partner link repeatUntil scope

  9. WS-BPEL: What it is not • An end-to-end language • Does not explicitly describe flows thru multiple business processes • Only shows directly connected partners Process a invokes b, b invokes c…a does not know c • A deployment or configuration language • Vendor tooling needs to provide this • Policy language needed

  10. SCA WS-BPEL Goals • Bottom Up • Allow existing BPEL processes to be used without change • WS-BPEL and BPEL4WS 1.1 • Top Down • Design SCA components then use WS-BPEL to implement • May include SCA extensions to WS-BPEL for SCA property handling, and multi-destination Partners

  11. SCA WS-BPEL

  12. Friction Point • WS-BPEL partnerLinks are client/server biased • myRole and partnerRole • No notion of who is client or server. A typical WS-BPEL process acts in both roles • SCA Services and References are client/server based • A client/server distinction based on who sends first message • After first message, callbacks and converstions may proceed

  13. WS-BPEL partnerLinks WS-BPEL Process Partner Link Type myRole partnerRole External Service Java, c++, BPEL WSDL Port Type 1 WSDL Port Type 2

  14. SCA Services and References WSDL Port Type 2 Component Component Reference Service A Callback WSDL Port Type 1

  15. Decide who is the Client To ensure SCA wires correctly Given a WS-BPEL defintion: If a receive, pick, onEvent, is the first use of a partnerLink then myRole is an SCA Service Else myRole is a reference/callback

  16. SCA WS-BPEL Spec • Rules for mapping partnerLinks to SCA Services and References • Previous slide is a simplification • Multiplicities need to be considered (0..1, 1..1, 0..n) • Naming services and references • Reuse partnerLink names • Scoped partnerLinks must be disambiguated

  17. SCA WS-BPEL Spec • Support for SCA conversations • Not to be confused with WS-BPEL correlation mechanism • WS-BPEL specifications that use a partnerLink after a conversation has ended may be rejected • An SCA generated conversation violation fault may be generated

  18. SCA WS-BPEL Spec SCA Extentions to WS-BPEL • Only in SCA aware WS-BPEL definitions • SCA Properties • A ws-bpel variable can be defined as as SCA property and can be initialised by SCA • Multi-valued References • Ws-bpel partnerLinks are 0..1 • Sca extension to allow 0..m • Multiple partners under the cover • E.g. RFQ scenario

  19. SCA WS-BPEL Spec • Only covers Executable WS-BPEL • Abstract WS-BPEL cannot be an implementation language by definition

  20. Summary Tying the Nots! • A workflow language (WS-BPEL) • Process logic and service invocation ordering • A standard deployment and configuration language (SCA) • Dependencies between components • Policy framework (SCA) • An end-to-end view (SCA and BPEL) • The two together is a happy partnership

  21. Acknowledgements • The SCA BPEL Working Group • Martin Chapman Oracle • Sabin Ielceanu TIBCO Software, Inc • Dieter Koenig IBM Corporation • Michael Rowley BEA Systems, Inc. • Ivana Trickovic SAP AG • Alex Yiu Oracle

  22. Further Reading • http://www.osoa.org • SCA WS-BPEL Specification http://www.osoa.org/download/attachments/35/SCA_ClientAndImplementationModelforBPEL_V100.pdf?version=1 • SCA WS-BPEL White Paper http://www.osoa.org/display/Main/SCA+BPEL+White+Paper • Relationship Between SCA and BPEL White Paper http://www.osoa.org/display/Main/Relationship+between+SCA+and+BPEL

More Related