sca bindings simon holdsworth piotr przybylski
DESCRIPTION
SCA Bindings Simon Holdsworth Piotr Przybylski. Agenda. SCA Bindings Overview Bindings TC Charter Bindings Web Services Binding JMS Binding JCA Binding. SCA Bindings - Overview. Bindings describe the access mechanism used to provide or access a service. SCA Bindings - Overview. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/1.jpg)
SCA Bindings
Simon Holdsworth
Piotr Przybylski
![Page 2: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/2.jpg)
Agenda
SCA Bindings Overview
Bindings TC Charter
Bindings
Web Services Binding
JMS Binding
JCA Binding
![Page 3: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/3.jpg)
SCA Bindings - Overview
Composite A
ComponentAService
BindingWeb ServiceSCAJCAJMSSLSB…
BindingWeb ServiceSCAJCAJMSSLSB…
ComponentB
Interface- Java interface- WSDL PortType
Interface- Java interface- WSDL PortType
Wire WireWire
Reference
Propertysetting
Properties
Bindings describe the access mechanism used to provide or access a service
![Page 4: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/4.jpg)
SCA Bindings - Overview
Composite
service
reference
reference
Hire
Security
Payroll
Web service binding
JCA binding
JMS binding
EIS
Messaging System
Example SCA Composite with bindings:
![Page 5: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/5.jpg)
SCA Bindings - Overview
Binding elements define details of interaction Location
E.g. HTTP URL, JMS Queue Configuration
E.g. JMS Connection, JCA Interaction
Binding specs define how policy intents are satisfied
![Page 6: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/6.jpg)
SCA Bindings - TC Charter
Specifications Web service, JMS and JCA bindings Updates from other specs, e.g. pub/sub model
Compliance Definition and tests
Potential additional binding specifications HTTP with REST and other patterns FTP, SMTP, others
Relationships with other standards WS-*, WS-I, JMS URI, etc.
![Page 7: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/7.jpg)
SCA Bindings – Other TCs
SCA binding Defined by SCA assembly spec Non-interoperable, intra-domain wiring No additional configuration The default if no other binding specified
EJB binding Allows interaction with J2EE components Integrate a session bean into an SCA assembly Expose services to clients using EJB programming model.
<binding.sca/>
<binding.ejb uri=“corbaname:...” ebj-version=“EJB3”/>
![Page 8: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/8.jpg)
Web Service Binding
![Page 9: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/9.jpg)
SCA Bindings - Web Service
Make an SCA service available as a web service
Allow an SCA reference to invoke a web service
WSDL-based Either references existing WSDL binding and/or port
elements or Defines how one is generated (based on WS-I BP 1.1)
Relies on or defers to existing standards WSDL, SOAP, WS-Addressing
![Page 10: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/10.jpg)
Composite
SCA Bindings - Web Service
References typically use an existing WSDL document Refer to port element to identify a specific service
Refer to binding element to identify a kind of service Then specify service location by EPR or URI
Provider’s WSDL document
reference
Web ServiceProvider
<binding.ws wsdlElement=“...#wsdl.port(...) wsdlLocation=“http://...” />
<binding.ws wsdlElement=“...#wsdl.binding(...) uri=“http://...”/>
![Page 11: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/11.jpg)
Composite
SCA Bindings - Web Service
Services may allow the WSDL binding to be generated
Based on service’s interface May specify a URI or EPR or use the default
SCA service’s generatedWSDL document
Web ServiceProvider
service
<binding.ws/>
![Page 12: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/12.jpg)
Composite
SCA Bindings - Web Service
Services may use an existing WSDL binding element In cases where specific WSDL binding subelements needed
SCA service’s WSDL document
Web ServiceProvider
<binding.ws wsdlLocation=“http://...” wsdlElement=“...#wsdl.binding(...)/>
service
Existing WSDL with required binding elements
![Page 13: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/13.jpg)
JMS Binding
![Page 14: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/14.jpg)
SCA Bindings - JMS
Make an SCA service available to JMS messaging applications
Allow an SCA reference to communicate with JMS messaging applications
May refer to existing JMS resources, or defines details of JMS resources to be created
Definitions document contains reusable connection metadata
Required JMS header values may be specified
![Page 15: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/15.jpg)
Composite
SCA Bindings - JMS
References typically use existing JMS resources Spec does support creation of resources as well
Specified via URI, binding sub elements or definitions file:
reference
Back End Queue
<binding.jms requestConnection=“defs:BackEndDefs”/>
<definitions targetNamespace=”http://example.org”> <binding.jms name=”BackEndDefs”> <destination name=”BackEndQueue” create=”never”/> <connectionFactory name=”BackEndQueueCF” create=”never”/> </binding.jms></definitions>
![Page 16: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/16.jpg)
Composite
SCA Bindings - JMS
Services may use existing JMS resources or have new ones created
Specified via URI, binding sub elements or definitions file:
Order Queue
<binding.jms> <destination name=”OrderQueue” create=”ifNotExist”/> <activationSpec name=”OrderQAS” create=”ifNotExist”/></binding.jms>
service
![Page 17: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/17.jpg)
SCA Bindings - JMS
Callback and and conversation support JMS Binding specifies the protocol Via new JMS header properties for callback
queue, conversation start, ID and max idle time,
Operation Selection and Data Binding Maps between JMS Message and WSDL
operation Default behaviour specified, allows communication
between JMS reference and service
![Page 18: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/18.jpg)
JCA Binding
![Page 19: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/19.jpg)
SCA Bindings - JCA
Provides connectivity with the services provided by the Enterprise Information Systems (EIS) external to the SCA
Connectivity based on the Resource Adapters compliant with the Java EE Connector Architecture
Requires implementation of Common Client Interface
Does not define EIS Bindings between different SCA runtimes within SCA system, for example Java EE and EIS based runtimes.
![Page 20: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/20.jpg)
SCA Bindings - JCA
Make an SCA Service available to external EIS system
Allow an SCA reference to communicate with external EIS system
Two sets of configuration parameters, connection and interaction allow for reuse and reconfiguration
Connection - location of the services Interaction - provided to invoke one specific service available
at the endpoint Binding properties depend on the used Resource
Adapter
![Page 21: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/21.jpg)
SCA Bindings - JCA
References define services available to invoke from the composite
Allows to use existing resources to access these services as well as supports creation of resources
Connection configuration can be specified via URI, binding sub elements or definitions file
Existing Connection Factory lookup name:
<binding.jca uri=“java:comp/env/EIS”/>
![Page 22: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/22.jpg)
Composite
SCA Bindings - JCA
EIS
<definitions targetNamespace=”http://example.org”> <binding.jca name=”serviceInfo”>
<jca.outbound.connection managed="true"><resourceAdapter name="connector.file.FAResourceAdapter">
<property name="logDrive">D</property></resourceAdapter><connection name="FAFactory” create="always">
<property name="host">localhost</property></connection>…
<binding.jca connectionInfo =“defs:serviceInfo”/>
New resources in the definitions file
Reference
![Page 23: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/23.jpg)
SCA Bindings - JCA
Interaction configuration can be specified by binding sub elements or definitions file
<definitions targetNamespace=”http://example.org”> <binding.jca name=”serviceInfo”>
<jca.outbound.interaction><connectionSpec name="FAConnectionSpec">
<property name="userid">SYSAD</property></connectionSpec><interactionSpec name="FAInteractionSpec“/><operation name="hello">
<interactionSpec><property name="fileMode">read</property>
</interactionSpec></operation></jca.outbound.interaction>
</binding.jca> …
![Page 24: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/24.jpg)
SCA Bindings - JCA
Services define how the EIS system may invoke composite Allows to use existing resources to access these services as
well as supports creation of resources Connection configuration can be specified via URI, binding sub
elements or definitions file
<binding.jca> <jca.inbound.connection> <resourceAdapter name="FAResourceAdapter"> <property name="logDrive">D</property> </resourceAdapter> <activationSpecname="FAActivationSpec“ create=“always”> <property name="directory_type">temp</property> <property name="drive">C</property> </activationSpec> </jca.inbound.connection>…
![Page 25: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/25.jpg)
SCA Bindings - JCA
Interaction configuration can be specified by binding sub elements or definitions file
<binding.jca> <jca.inbound.interaction>
<listener>MyInboundListener</listener><inboundOperation name="hello" nativeOperation="TXPN"/><inboundOperation name="bye" nativeOperation="ETXPRN"/>
</jca.inbound.interaction></binding.jca> …
Composite ServiceEIS
![Page 26: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/26.jpg)
SCA Bindings - JCA
Binding properties Customize connection or interaction properties without
modifying definitions file Specifying property values in the bindings or composite
<definitions targetNamespace=“…”> <connectionSpec name=“FileConnectionSpec">
<property name="password" source="$PWD"/><property name=“user" source="$userid"/>
</connectionSpec>
<binding.jca uri=“eis/MCF“ connectionInfo="JCA_Svc"> <property name=”PWD”>SYSAD</property> <property name=”userid” source=”$UID”/></binding.jca>…
<composite … > <property name=”UID”>SYSAD</property></composite>…
![Page 27: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/27.jpg)
SCA Bindings - JCA
Callback and conversations are not supported by the JCA Bindings
EIS accessible through adapters have capabilities to support either one of these capabilities
Operation Selection and Data Binding The lack of the data interface in CCI prevents from
specifying default behavior A contract between JCA Binding and data binding
provided is required for the binding to operate
![Page 28: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/28.jpg)
Summary
![Page 29: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/29.jpg)
SCA Bindings - Summary
Web Service, JMS bindings OSOA specifications submitted
JCA binding OSOA specification being finalised
Other bindings HTTP, possibly others, no existing submission
Conformance and test Not defined in OSOA specs
![Page 30: SCA Bindings Simon Holdsworth Piotr Przybylski](https://reader035.vdocuments.net/reader035/viewer/2022062309/568157b4550346895dc53d48/html5/thumbnails/30.jpg)
Questions?