web services business process execution language (ws-bpel 2.0) the standards landscape dieter könig...
TRANSCRIPT
![Page 1: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/1.jpg)
Web ServicesBusiness Process Execution Language (WS-BPEL 2.0)The Standards Landscape
Dieter KönigSenior Technical Staff MemberIBM Software GroupBöblingen, [email protected]
![Page 2: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/2.jpg)
SOA on your terms and our expertise© 2007 IBM Corporation
Web Services Standards for SOAThe Web Services Platform Architecture
Messaging
Quality of Service
Transport
Description
Components
Transport
Interface + Bindings
Composite
XML Non-XML
Security
Policy
Disco
very
, Neg
otia
tion
, Ag
reem
en
t
Atomic
OrchestrationOrchestration ProtocolsProtocols StateState
ReliableMessaging Transactions
ComponentModel
ComponentModel
![Page 3: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/3.jpg)
SOA on your terms and our expertise© 2007 IBM Corporation
Web Services Standards for SOAThe Web Services Platform Architecture
Messaging
Quality of Service
Transport
Description
Components
Transport
Interface + Bindings
Composite
XML Non-XML
Security
Policy
Disco
very
, Neg
otia
tion
, Ag
reem
en
t
Atomic
OrchestrationOrchestration ProtocolsProtocols StateState
ReliableMessaging Transactions
ComponentModel
ComponentModel
WS-RM
WSDL* WS-Policy*
HTTP, TCP/IP, SMTP, FTP, …
UD
DI, W
S-A
ddr, M
eta
data
Exch
.,…
WS-CWS-N* WS-RFWS-BPEL
WS-Security*WS-AT WS-BA
SOAP, WS-Addr* JMS, RMI/IIOP, ...
SCA
![Page 4: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/4.jpg)
SOA on your terms and our expertise© 2007 IBM Corporation
Web Services Standards for SOAThe Web Services Platform Architecture
Messaging
Quality of Service
Transport
Description
Components
Transport
Interface + Bindings
Composite
XML Non-XML
Security
Policy
Disco
very
, Neg
otia
tion
, Ag
reem
en
t
Atomic
OrchestrationOrchestration ProtocolsProtocols StateState
ReliableMessaging Transactions
ComponentModel
ComponentModel
WS-RM
WSDL* WS-Policy*
HTTP, TCP/IP, SMTP, FTP, …
UD
DI, W
S-A
ddr, M
eta
data
Exch
.,…
WS-CWS-N* WS-RFWS-BPEL
WS-Security*WS-AT WS-BA
SOAP, WS-Addr* JMS, RMI/IIOP, ...
SCA
![Page 5: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/5.jpg)
SOA on your terms and our expertise© 2007 IBM Corporation
WS-BPEL 2.0 Extensions for People (BPEL4People)http://www-128.ibm.com/developerworks/webservices/library/specification/ws-bpel4people
WS-BPEL 2.0 Extensions for Sub-Processes (BPEL-SPE)http://www-128.ibm.com/developerworks/webservices/library/specification/ws-bpelsubproc
WS-BPEL 2.0 Extensions for Java (BPELJ)http://www-128.ibm.com/developerworks/library/specification/ws-bpelj
WS-BPEL Standards Roadmap
WS-BPEL 2.0www.oasis.org
www.osoa.org
Service Component Architecture (SCA)SCA Assembly Model
SCA WS-BPEL Client and Implementation Model
![Page 6: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/6.jpg)
process
invoke
receive
receive
invoke
invoke
Handlers
faulthandler
eventhandler
faulthandler
compensationhandler
terminationhandler
eventhandler
PartnerLinks
PartnerLink Type
PortType 1
PortType 2
partnerlink
partnerlink
Variables42
WSDL Message
XML SchemaType
XML SchemaElement
PropertiesCorrelation Sets
Property 1
Property 2
StructuredActivities
if-elsewhile
scope
pick
sequence
flow
repeatUntil
forEach
BasicActivities
receive
reply
invoke
throw
exit
wait
empty
compensatevalidate
assign
rethrow
extensionActivity
compensateScope
![Page 7: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/7.jpg)
Business Process
Application Integration
WAS.net
CICS
SOAP
RMI/IIOP
MQSeries
MQSeries
Delivery channels
Legacy integration
![Page 8: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/8.jpg)
BPEL in SOA: Abstract View
WS-BPEL is aRecursive Aggregation Model
for Web Services
Aggregation: a set of Web services can be tied into one or more new Web service by means of a business process model
Recursive: these new Web services can again be tied into other new Web services
![Page 9: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/9.jpg)
WS-BPELTool1
WS-BPELToolk
WS-BPELTool2
Benefits of WS-BPELBusiness-Level
IT-Level
ModelingTool1
ModelingTooln
ModelingTool2
…ModelingTool3
WS-BPELEngine1
WS-BPELEnginek
WS-BPELEngine2
WS-BPEL Engine
WS-BPEL Tool
![Page 10: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/10.jpg)
Two-Level Programming Model
Programming in the large Non-programmers implementing processes
Flow logic deals with combining functions in order to solve a more complex problem (such as processing an order)
Programming in the small Programmers implementing low-level
services Function logic deals with a discrete fine-grained
task (such as retrieving an order document or updating a customer record)
![Page 11: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/11.jpg)
Process Usage Patterns
Aiming for a single approach for both Executable processes
Contain the partner’s business logic behind an external protocol
Abstract processes Define the publicly visible behavior of some or all
of the services an executable process offers Define a process template embodying domain-
specific best practices
![Page 12: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/12.jpg)
WS-BPEL Language Constructs
WS-BPEL process definition Recursive composition and partner links Variables Variable properties Correlation sets Basic and structured activities Scopes Compensation handling
![Page 13: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/13.jpg)
WS-BPEL Process Definitionprocess
imports
Declare dependencies on external XML Schema or WSDL definitions extensions
Declare namespaces of WS-BPEL extension
attributes and elements
variablesData holding state of a business process or exchanged with partners
partnerlinks
Relationships that a WS-BPEL process will employ in its behavior
correlationsets
Application data fields that together identify a
conversation
messageexchanges
Relationship between inbound and outbound
message activities
eventhandlers
Concurrently process inbound messages or timer alarms
faulthandlers
Deal with exceptional situations in a process
primaryactivity
Perform the process logic – any number of activities may be recursively nested
XMLschemas
WSDLdefinitions
![Page 14: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/14.jpg)
Partner Linksprocess
partnerlink
partner link type
Peer-to-peer conversational partner relationship
WSDLport type
myRole
Provided port type
WSDLport type
partnerRole
Required port type
receive
Inbound request – service provided by the process
invoke
Outbound request – service required by the process
![Page 15: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/15.jpg)
Variablesprocess
assign
xsl:transform
receive
request
response
invoke
request
reply
response
42
WSDLmessage
WSDLmessage
WSDLmessages
Variables defined using WSDL messages
42XML
schemas
XML Schemaelements / types
Variables defined using XML schema elements or types
![Page 16: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/16.jpg)
Properties and Correlation Sets How to identify stateful instances via stateless WS interfaces? A process instance is assigned one or more keys
Business data is used as key, e.g., customerID A key can be compound, e.g., (customerID, orderNumber) WS-BPEL calls a key a correlation set – it is used to correlate an incoming
message with a process instance
Process 4(0123,15)
Process 3(0815,42)
Process 2(4711,37)
Process 1(0815,12)
0815 42
Message 2
customerID
orderNumber
4711 37
Message 1
![Page 17: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/17.jpg)
process
Basic Activities
receive reply
invokeInvoke a one-way or request-response operation
Do a blocking wait for a matching message to arrive / send a message in reply
validate
assignUpdate the values of variables or partner links with new data
Validate XML data stored in variables
throw
rethrow
Generate a fault from inside the business process
Forward a fault from inside a fault handler
exit
Immediately terminate execution of a business
process instance
compensate
compensateScope
Invoke compensation on all completed child scopes
in default order
Invoke compensation on one completed child scope
waitWait for a given time
period or until a certain time has passed
empty No-op instruction fora business process
extensionActivityWrapper for language
extensions
![Page 18: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/18.jpg)
process
flowContained activities are executed in parallel, partially ordered through control links
sequenceContained activities are performed sequentially in lexical order
whileContained activity is repeated while a predicate holds
repeatUntilContained activity is repeated until a predicate holds
pick Block and wait for a suitable message to arrive
(or time out)
forEach Contained activity is performed sequentially or in parallel, controlled by a specified counter variable
if-elseif-else Select exactly one branch of activity from a set of
choices
scope Associate contained activity with its own local variables,
partner links, etc., and handlers
Structured Activities
2. N.1. …
B C
A
c
c
c1 c2…
2. N.1. …
… AM2M1
![Page 19: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/19.jpg)
process
Scopes
scope
scope
scope
scopescope
scope
scope
Scopes provide a context which influences the execution behavior of its enclosed activities
Isolated scopes provide control of concurrent access to shared resources
scope
Local declarations – partner links, message exchanges, variables, correlation sets
Local handlers – event handlers, fault handlers, a termination handler, and a compensation handler
Compensation handler to undo persisted effects of
already completed activities
Termination handler to deal with forced scope termination
(external faults)
primary activity
scope
![Page 20: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/20.jpg)
WS-BPEL Abstract Processes
Hiding process details Abstract process use cases
![Page 21: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/21.jpg)
Hiding Process Details
private process
En
terp
rise
publicview
Abstract Process
Executable Process
![Page 22: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/22.jpg)
Abstraction and Completion
ep
p q
ap
q
abstraction
executablecompletion
Omitted informationrepresents modeling artifacts
that may be provided later
An abstract process describes “behavior” It may not be executableIt may omit certain information
![Page 23: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/23.jpg)
WS-BPEL Adoption – Products Active Endpoints ActiveBPEL BEA WebLogic Cape Clear Orchestrator Intalio/Apache Orchestration Director Engine (Ode) IBM WebSphere Process Server Microsoft BizTalk Server MidOffice BPEL Engine (open source) OpenLink Virtuoso Universal Server Oracle BPEL Process Manager Parasoft BPEL Maestro Progress Sonic BPEL Server SAP NetWeaver Sun eInsight BPM
![Page 24: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/24.jpg)
SOA on your terms and our expertise© 2007 IBM Corporation
WS-BPEL 2.0 Extensions for People (BPEL4People)http://www-128.ibm.com/developerworks/webservices/library/specification/ws-bpel4people
WS-BPEL 2.0 Extensions for Sub-Processes (BPEL-SPE)http://www-128.ibm.com/developerworks/webservices/library/specification/ws-bpelsubproc
WS-BPEL 2.0 Extensions for Java (BPELJ)http://www-128.ibm.com/developerworks/library/specification/ws-bpelj
WS-BPEL Standards Roadmap
WS-BPEL 2.0www.oasis.org
www.osoa.org
Service Component Architecture (SCA)SCA Assembly Model
SCA WS-BPEL Client and Implementation Model
![Page 25: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/25.jpg)
SOA on your terms and our expertise© 2007 IBM Corporation
BPEL4People & WS-HumanTask
Specifications published June 25, 2007
http://www-128.ibm.com/developerworks/webservices/library/specification/ws-bpel4people/
Next step: OASIS Technical Committee to be created to standardize BPEL4People and WS-HumanTask
![Page 26: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/26.jpg)
SOA on your terms and our expertise© 2007 IBM Corporation
BPEL4People & WS-HumanTask – Requirements
Integration of human-executed activities in Web services-based business processes
Integration of human-executed activities in SOA-based applications
Standard-based solution to support interoperability and portability scenarios
![Page 27: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/27.jpg)
SOA on your terms and our expertise© 2007 IBM Corporation
BPEL4People & WS-HumanTask – Approach
BPEL4People
– Definition of human interactions within WS-BPEL processes
– Specification built on top of WS-BPEL 2.0
WS-HumanTask
– Definition of service-enabled human tasks and notifications
– Coordination protocol used to control autonomy and life cycle of service-enabled human tasks in an interoperable manner
– Interoperable programming interface enabling task client applications to work with human tasks
![Page 28: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/28.jpg)
SOA on your terms and our expertise© 2007 IBM Corporation
Process ProcessProcess ProcessProcess
Peopleactivity
Peopleactivity
Inline TaskDefinition
Peopleactivity
Invokeactivity
Peopleactivity
Inline TaskDefinition
StandaloneTask Definition
StandaloneTask Definition
StandaloneTask Definition
BPEL4People: People Activities and Tasks
Task can be used outside of process
context
Communication with task is based on
coordination protocol
Task is interoperable as well as portable
Task is just a Web service with no
additional constraints
Easy to switch between performing the task by humans
or programs
Task can only be used inside of
process context
Task is interoperable as well as portable
![Page 29: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/29.jpg)
SOA on your terms and our expertise© 2007 IBM Corporation
BPEL4People: Web Service vs. Human Task
Translation Process
receive document
automatictranslation
reply translation
manualtranslation
Web Service Endpoint Abstract Organizational Group
![Page 30: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/30.jpg)
SOA on your terms and our expertise© 2007 IBM Corporation
Deployment Descriptor
Deployment Descriptor
BPEL4People: People Links and People Resolution
Brochure Creation Process
create
approve
revise
"Authors"
"Approvers"
DepartmentsDepartment1
Member1Member2...
Department2...
UsersGroup1
Member1Member2...
Group2...
RolesRole1
Member1Member2...
Role2...
Select staffWhere
qualification=
"tech writer"
Select staffWhere
responsibility=
"marketing"
Org Database
![Page 31: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/31.jpg)
SOA on your terms and our expertise© 2007 IBM Corporation
WS-BPEL 2.0 Extensions for People (BPEL4People)http://www-128.ibm.com/developerworks/webservices/library/specification/ws-bpel4people
WS-BPEL 2.0 Extensions for Sub-Processes (BPEL-SPE)http://www-128.ibm.com/developerworks/webservices/library/specification/ws-bpelsubproc
WS-BPEL 2.0 Extensions for Java (BPELJ)http://www-128.ibm.com/developerworks/library/specification/ws-bpelj
WS-BPEL Standards Roadmap
WS-BPEL 2.0www.oasis.org
www.osoa.org
Service Component Architecture (SCA)SCA Assembly Model
SCA WS-BPEL Client and Implementation Model
![Page 32: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/32.jpg)
SOA on your terms and our expertise© 2007 IBM Corporation
WS-BPEL 2.0 Extensions for Sub-Processes (BPEL-SPE)
Services used by an activity may be implemented as another process
– In BPEL this is hidden from the engine(s) running both processes
– Both processes can be coupled to a larger “virtual” process
• Their lifecycle can be coupled
• They may share context
Benefits
– Reuse of process knowledge
• Same business problems
• Best practices
– Enhanced modeling capabilities
• Decomposition of large processes, outsourcing
• Composition – modular process structure
– Large-scale distributed execution
• Process “parts” on different platforms, within one enterprise or even across enterprises (“B2B processes”)
![Page 33: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/33.jpg)
SOA on your terms and our expertise© 2007 IBM Corporation
Sub-Processes – Definition and Invocation
WFMS 2
ParentProcess
LocalSub-Process
RemoteSub-Process
InlineSub-Process
call
call call
WFMS 1
![Page 34: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/34.jpg)
SOA on your terms and our expertise© 2007 IBM Corporation
Business Process and WS InfrastructureBusiness Process and WS Infrastructure
Sub-Processes – Coordination Protocol
Parent processParent process
InlineSub-Process
InlineSub-Process
CallCall
CallCall
Remote Sub-ProcessRemote Sub-Process
Request
Reply
Call
Return
Register
Coordinationprotocol
Compensation HandlerCompensation Handler
Compensate
Applicationprotocol
![Page 35: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/35.jpg)
SOA on your terms and our expertise© 2007 IBM Corporation
WS-BPEL 2.0 Extensions for People (BPEL4People)http://www-128.ibm.com/developerworks/webservices/library/specification/ws-bpel4people
WS-BPEL 2.0 Extensions for Sub-Processes (BPEL-SPE)http://www-128.ibm.com/developerworks/webservices/library/specification/ws-bpelsubproc
WS-BPEL 2.0 Extensions for Java (BPELJ)http://www-128.ibm.com/developerworks/library/specification/ws-bpelj
WS-BPEL Standards Roadmap
WS-BPEL 2.0www.oasis.org
www.osoa.org
Service Component Architecture (SCA)SCA Assembly Model
SCA WS-BPEL Client and Implementation Model
![Page 36: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/36.jpg)
SOA on your terms and our expertise© 2007 IBM Corporation
WS-BPEL 2.0 Extensions for Java (BPELJ)
Include inline Java code in BPEL processes
– Activities
– Conditions
– Variable initialization
Orchestrate long-running interactions with Java components
Support advanced transactional capabilities
– Atomic Scopes and Atomic Processes
![Page 37: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/37.jpg)
SOA on your terms and our expertise© 2007 IBM Corporation
BPELJ Examples – Inline Java Expressions
Condition (Boolean Expression)
Variable initialization (General Expression)
<if> <condition expressionLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:java1.4"> widget.equals(getVariableProperty("PO", "productName")) </condition> ... <else>...</else></if>
<variable name="salesTax" type="xsd:float"> <from expressionLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:java1.4"> subtotal * taxRate </from></variable>
![Page 38: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/38.jpg)
SOA on your terms and our expertise© 2007 IBM Corporation
BPELJ Examples – Inline Java Activity
Extension Activity
<process name="purchaseOrderProcess" bpelj:xmlBinding="bpelj:DOM3" ...> <variables> <variable name="justificationDoc" type="lns:justificationDocument"/> <variable name="po" type="lns:POMsg" bpelj:xmlBinding="bpelj:SDO1.0"/> </variables> <sequence> ... <extensionActivity>
<bpelj:snippet> // Get the approver using SDO accessor Approver approver = po.getApprover(); // Get the approver's comments NodeList commentNodeList = justificationDoc.getElementsByTagName("approverComment"); ... </bpelj:snippet>
</extensionActivity> </sequence> </process>
![Page 39: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/39.jpg)
SOA on your terms and our expertise© 2007 IBM Corporation
WS-BPEL 2.0 Extensions for People (BPEL4People)http://www-128.ibm.com/developerworks/webservices/library/specification/ws-bpel4people
WS-BPEL 2.0 Extensions for Sub-Processes (BPEL-SPE)http://www-128.ibm.com/developerworks/webservices/library/specification/ws-bpelsubproc
WS-BPEL 2.0 Extensions for Java (BPELJ)http://www-128.ibm.com/developerworks/library/specification/ws-bpelj
WS-BPEL Standards Roadmap
WS-BPEL 2.0www.oasis.org
www.osoa.org
Service Component Architecture (SCA)SCA Assembly Model
SCA WS-BPEL Client and Implementation Model
![Page 40: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/40.jpg)
SCA
Service Component Architecture
SCA Assembly Model – Component
Implementation - Java - WS-BPEL - Composite - …
Properties
Services
…
References
…
![Page 41: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/41.jpg)
SCA
Service Component Architecture
SCA Assembly Model – Composite
Binding- Web Service- SCA- JCA- JMS- SLSB- …
Service- Java interface- WSDL PortType
Wire WireWire
ComponentA
ComponentB
Propertysetting Reference
- Java interface- WSDL PortType
Binding- Web Service- SCA- JCA- JMS- SLSB- …
![Page 42: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/42.jpg)
SCA
Service Component Architecture
SCA WS-BPEL Client and Implementation Model
Specifies how WS-BPEL can be used with SCAUse any valid WS-BPEL 2.0 process definition as the implementation of a
component within SCA
Use WS-BPEL to implement any SCA Component Type that uses only WSDL interfaces to define services and references, possibly with some SCA specific extensions used in process definition.
Create a WS-BPEL process definition that uses SCA extensions and generate an SCA Component Type and use that type within an SCA assembly
Some SCA capabilities (such as properties and multi-party references) can only be used by WS-BPEL process definitions that use SCA extensions.
![Page 43: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/43.jpg)
SCA
Service Component Architecture
SCA WS-BPEL Client and Implementation Model WS-BPEL inside
Implementation - Java - WS-BPEL - Composite - …
WS-BPEL Process
Services
References
Properties
… …
![Page 44: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/44.jpg)
SCA
Service Component Architecture
SCA WS-BPEL Client & Implementation ModelServices and References
WS-BPEL Process
flow
Service
A Reference
Bwire wire
partnerLink A(myRole)
partnerLink B(partnerRole)
invoke
reply
receive
![Page 45: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/45.jpg)
SCA
Service Component Architecture
SCA WS-BPEL Client & Implementation ModelProperties
WS-BPEL Process
flow
property
currency
variablecurrency
sca:property="yes"
. . .
. . .
![Page 46: Web Services Business Process Execution Language (WS-BPEL 2.0) The Standards Landscape Dieter König Senior Technical Staff Member IBM Software Group Böblingen,](https://reader036.vdocument.in/reader036/viewer/2022062806/56649ef35503460f94c050ad/html5/thumbnails/46.jpg)
SOA on your terms and our expertise© 2007 IBM Corporation
WS-BPEL 2.0 Extensions for People (BPEL4People)http://www-128.ibm.com/developerworks/webservices/library/specification/ws-bpel4people
WS-BPEL 2.0 Extensions for Sub-Processes (BPEL-SPE)http://www-128.ibm.com/developerworks/webservices/library/specification/ws-bpelsubproc
WS-BPEL 2.0 Extensions for Java (BPELJ)http://www-128.ibm.com/developerworks/library/specification/ws-bpelj
WS-BPEL Standards Roadmap
WS-BPEL 2.0www.oasis.org
www.osoa.org
Service Component Architecture (SCA)SCA Assembly Model
SCA WS-BPEL Client and Implementation Model