Bridging component frameworks: Fractal - PowerPoint PPT Presentation

1 / 28
About This Presentation
Title:

Bridging component frameworks: Fractal

Description:

SCA runtimes must implement. WebServices (SOAP) SCA link (local calls) Extensible Bindings ... JAVA and C runtimes. Service Data Object. Data Access Service ... – PowerPoint PPT presentation

Number of Views:85
Avg rating:3.0/5.0
Slides: 29
Provided by: Guil191
Category:

less

Transcript and Presenter's Notes

Title: Bridging component frameworks: Fractal


1
Bridging component frameworksFractal
SCA06/13/2006
  • G.Dufrêne / L.Seinturier

2
Plan
  • Introduction
  • Fractal
  • Service Component Architecture (SCA)
  • Bridging Fractal SCA
  • Perspectives

3
Introduction
  • Many Component frameworks
  • Fractal, SCA, CCM, OSGi
  • Component framework interoperability?
  • Data exchanges
  • Workflow
  • Case Study
  • interoperability between Fractal SCA

4
Fractal
  • ObjectWeb component model
  • Hierarchical with sharing
  • Unified vision of business and control
    interfaces
  • No predefined set of control interfaces
  • Support for primitive and composite bindings

5
Service Component Architecture
  • Specifications by IBM, BEA, Oracle, SAP
    (version 0.9, november 2005)
  • SOA based on a components model
  • Two levels of assembly
  • Tightly coupled components programming in the
    small
  • Loosely coupled service-oriented services
    programming in the large

6
Service Component Architecture
  • SCA Component

Component
Service
Reference
  • Service and Reference defined by
  • Java Interface
  • WSDL PortType
  • Component implementation
  • JAVA, BPEL, JavaScript, C

7
Service Component Architecture
  • Organize components into modules

Module
ComponentA
ComponentB
EntryPoint
Extern.service
Wire
8
Service Component Architecture
  • Communication between modules
  • Module largest composition of tightly-coupled
    components
  • SCA runtimes must implement
  • WebServices (SOAP)
  • SCA link (local calls)
  • Extensible Bindings
  • Could be JMS, JCA, SLSB, adhoc serialization

9
Service Component Architecture
  • SCA overview

10
Service Component Architecture
  • Service Component Definition Language
  • aka Fractal ADL
  • XML files, defines the architecture
  • One .module file per module
  • Optional .subsystem group modules into
    business logical processes
  • Component annotation, defines the implementation
  • .componentType file
  • JAVA 5 annotations

11
Service Component Architecture
  • Tuscany (Milestone 1 released on 07/06/2006)
  • Implements SCA specifications
  • JAVA and C runtimes
  • Service Data Object
  • Data Access Service
  • http//incubator.apache.org/tuscany

12
Plan
  • Introduction
  • Fractal
  • Service Component Architecture (SCA)
  • Bridging Fractal SCA
  • Goal
  • Fractal to SCA
  • SCA to Fractal
  • Perspectives

13
Bridging Fractal SCA / GOAL
  • Goal let Fractal SCA applications interoperate
  • Common communication mechanism (SOAP)
  • Fractal to SCA
  • SCA to Fractal
  • 2 prototyped solutions
  •  shadow  delegating components
  • SOAPBindingController

14
Bridging Fractal SCA / Fractal to SCA
  • Fractal client, SCA server

SCA Cpn.
Fractal Cpn.
?
EntryPoint
15
Bridging Fractal SCA / Fractal to SCA
  •  Shadow  delegating components

Java annotated interface
SCA Cpn.
Generated
EP
SCA Shadow
Fractal Cpn.
Soap layer
16
Bridging Fractal SCA / Fractal to SCA
  • Shadow SCA delegate
  • Pros
  • Simplest way to connect to a SCA component
  • Component description in the Fractal
    architecture
  • Cons
  • Static generation, at compile time

17
Bridging Fractal SCA / Fractal to SCA
  • Development process of a shadow
  • Annotation _at_SOAPClient on interface
  • Define the wsdl file for the target service
  • Define a Type mapper for business objects
  • Spoon processor generate a component
  • Implements Service Interface
  • Transparently delegate calls to SOAP layer

18
Bridging Fractal SCA / Fractal to SCA
  • Code snippet

import fcsoap.annotations.SOAPClientimport
fcsoap.annotations.SOAPName _at_SOAPClient(wsdlFil
e"bank/common/AccountService.wsdl", mapConf
BankMapperConf.class) public interface
AccountService public OperationList
getOperations( _at_SOAPName("in0") String id)
19
Bridging Fractal SCA / Fractal to SCA
  • SOAP Controller

SOAPBC
Fractal Cpn.
Soap layer
SCA Cpn.
EP
20
Bridging Fractal SCA / Fractal to SCA
  • SOAP Controller
  • Pros
  • Dynamic service binding
  • Cons
  • Written by programmer
  • No component representation of the SCA service

21
Bridging Fractal SCA / Fractal to SCA
  • Accessing SOAP Layer with SOAP Controller
  • Retrieve the SOAPcontroller
  • Get a reference to the service interface
    obtain a Java Proxy delegate calls to SOAP
    layer
  • Code snippet

AccountService service public void run()
Component comp getFcInterface(soap-controlle
r) service comp.getSOAPInterface( "bank/com
mon/AccountService.wsdl", AccountService.class)
new BankMapperConf().registerTypes(
TypeMapper.INSTANCE ) OperationList ol
service.getOperations(123456) ...
22
Bridging Fractal SCA / SCA to Fractal
  • SCA client, Fractal server

SCA Cpn.
Fractal Cpn.
Extern.service
?
23
Bridging Fractal SCA / SCA to Fractal
  • SCA to Fractal

Comanche
register
Fractal Cpn.
Soap layer
SCA Cpn.
ES
24
Bridging Fractal SCA / SCA to Fractal
  • Code snippet

_at_SOAPService(wsdlFile"bank/common/AccountService.
wsdl", mapConf BankMapperConf.class) public
class AccountImpl implements AccountService
private OperationList operations ... pub
lic OperationList getOperations(String _)
return operations
25
Bridging Fractal SCA
  • New feature Fractal client, Fractal server

JVM
JVM
ClientImpl
AccountImpl
SOAP !
26
Conclusion
  • Ability to bind Fractal SCA
  • Static solution Shadow delegate component
  • Dynamic solution SOAPBindingController

27
Perspectives
  • Short-term view
  • Use all informations available into the wsdl
  • Fractal ComponentType to WSDL generation
  • Long-term view
  • Use XSD schema to map business object
  • One-way calls (async calls)
  • Statefull calls (session and transaction
    handling)

28
  • Any questions ?
  • Try it yourself !
  • Tuscany SCA
  • http//incubator.apache.org/tuscany
  • Fractal SOAP layer
  • Available upon request Guillaume.Dufrene_at_lifl.fr
Write a Comment
User Comments (0)
About PowerShow.com