Report On Scalable Service Infrastructure Assessment Activity

idiotcanvasSecurity

Nov 17, 2013 (3 years and 8 months ago)

167 views







Project no. 223996


GENESIS

GEN
eric
E
uropean
S
ustainable
I
nformation
S
pace for Environment



Instrument:

Please tick

CA

STREP




IP

NOE


ICT
-

Information and Communication
Technologies Theme


WP6000


Report on EasyBPEL integration into Genesis
architecture


Due date of deliverable (as in Annex 1):

M22

Actual submission date:
30/07/2010


Start date of project: Sept. 2008








Duration: 3 years

Lead contractor for this deliverable:
EBM










Revision
2
.00




Project co
-
funded by the European Commission within the
Seventh Framework Programme (2007
-
2013)

Dissemination Level

PU

Public

X

PP

Restricted to other programme participants (including
the Commission Services)


RE

Restricted to a group specified by the consortium
(including the Commission Services)


CO

Confidential, only for members of the consortium
(including the Commission
Services)





GEN
eric
E
uropean
S
ustainable
I
nformation
S
pace for Environment

FP7
-
ICT
-
2007
-
Integrated project 223996

Deliverable :
D5600.1

Date

:

30/07/2010

Issue

:

1.00

Report On Scalable Service Infrastructure Assessment Activity


© Copyright 2008 2010

as per GENESIS Consortium Agreement.

Page
2

of
23



DOCUMENT CONTROL TABLE

Title

Report On Scalable Service Infrastructure Assessment Activity

Document
reference

D5600.1

Revision

2
.00

Revision date

15/07/2009

Author

Jean
-
Pierre Lorré

Company

EBM WEBSOURCING SAS

Contributors

Jean
-
Pierre Lorré

EBM


Frédéric Gardes

EBM


Thierry Dejean

EBM


Arne Bröring

WWU


Simon Jirka

WWU


Julien
Lesbegueries

EBM

Dissemination
level

Public

Review status


Draft

SP leader approved



Coordinator approved

GA approval
(where applicable)


GA approved

GA approved as public


SIGNATURES

Signatory

Role

Company

Date of
signature

Signature

Julien Lesbegueries

Contributor

EBM Websourcing

29/07/2010








GEN
eric
E
uropean
S
ustainable
I
nformation
S
pace for Environment

FP7
-
ICT
-
2007
-
Integrated project 223996

Deliverable :
D5600.1

Date

:

30/07/2010

Issue

:

1.00

Report On Scalable Service Infrastructure Assessment Activity


© Copyright 2008 2010

as per GENESIS Consortium Agreement.

Page
3

of
23








GEN
eric
E
uropean
S
ustainable
I
nformation
S
pace for Environment

FP7
-
ICT
-
2007
-
Integrated project 223996

Deliverable :
D5600.1

Date

:

30/07/2010

Issue

:

1.00

Report On Scalable Service Infrastructure Assessment Activity


© Copyright 2008 2010

as per GENESIS Consortium Agreement.

Page
4

of
23




REVISION RECORD

ISSUE

DATE

UPDATES

AUTHOR

1.00



Julien
Lesbegueries










GEN
eric
E
uropean
S
ustainable
I
nformation
S
pace for Environment

FP7
-
ICT
-
2007
-
Integrated project 223996

Deliverable :
D5600.1

Date

:

30/07/2010

Issue

:

1.00

Report On Scalable Service Infrastructure Assessment Activity


© Copyright 2008 2010

as per GENESIS Consortium Agreement.

Page
5

of
23


A
BSTRACT

This document presents
the results of WP6430 and WP6450 works resulting in a new component
compliant with GENESIS. This new component is an open source BPEL engine allowing GENESIS
geo
-
processing services to be orchestrated in higher level services. It is useful for asynchronou
s
services that can be encapsulated in order for exceptions, errors and timeout to be managed.

C
OPYRIGHT

The GENESIS Consortium consists of:


Legal Name

Acronym

Country

THALES ALENIA SPACE FRANCE

TAS
-
F

FR

DEUTSCHES ZENTRUM FUER LUFT UND RAUMFAHRT E.V.

DLR

DE

SOGREAH CONSULTANTS SAS

SGH

FR

ACRI
-
ST S.A.S.

ACRI
-
ST

FR

SPACEBEL SA

SPACEBEL

BE

WESTFAELISCHE WILHELMS
-
UNIVERSITAET MUENSTER

WWU

DE

JOINT RESEARCH CENTER


EUROPEAN COMMISSION

Institute for Environment and Sustainability (IES)

Institute for
Health and Consumer Protection (IHCP)

JRC

EU

4C TECHNOLOGIES NV

4CT

BE

GMV AEROSPACE AND DEFENCE SA

GMV A&D

ES

G.I.M. GEOGRAPHIC INFORMATION MANAGEMENT NV

GIM

BE

INTECS S.P.A.

INTECS

IT

EBM WEBSOURCING SAS

EBM WS

FR

ERDAS SA

ERDAS

BE

RESEARCH
STUDIOS AUSTRIA FORSCHUNGSGESELLSCHAFT MBH

RSAFG

AT

BRITISH PUBLISHERS LIMITED

BPL

UK

CAMBRIDGE ENVIRONMENTAL RESEARCH CONSULTANTS LTD

CERC

UK

IMPERIAL COLLEGE OF SCIENCE, TECHNOLOGY AND MEDICINE

ICSTM

UK

CENTRE HOSPITALIER UNIVERSITAIRE DE NICE

CHU

NICE

FR

LUDWIG
-
MAXIMILIANS
-
UNIVERSITAET MUENCHEN

LMU
-
MUENCHEN

DE

INSTITUT FUER OSTSEEFORSCHUNG WARNEMUENDE AN DER
UNIVERSITAET ROSTOCK

IOW

DE

INSTYTUT METEOROLOGII I GOSPODARKI WODNEJ

IMGW

PL

COMMISSARIAT A L’ENERGIE ATOMIQUE

CEA

FR

INGENIEURGESELLSCHAFT PROF. KOBUS UND PARTNER GMBH

KUP

DE


GEN
eric
E
uropean
S
ustainable
I
nformation
S
pace for Environment

FP7
-
ICT
-
2007
-
Integrated project 223996

Deliverable :
D5600.1

Date

:

30/07/2010

Issue

:

1.00

Report On Scalable Service Infrastructure Assessment Activity


© Copyright 2008 2010

as per GENESIS Consortium Agreement.

Page
6

of
23


Legal Name

Acronym

Country

Universite Pierre et Marie Curie

UPMC

FR

KLAIPEDOS UNIVERSITETAS

KU

LT

FRAUNHOFER GESELLSCHAFT ZUR FOERDERUNG DER ANGEWANDTEN
FORSCHUNG E.V.

FRAUNHOFER

DE

ORACLE BELGIUM BVBA

ORACLE

BE

UNIVERSITY OF THE WEST OF SCOTLAND

UWS

UK

BUREAU DE RECHERCHES GEOLOGIQUES ET MINIERES

BRGM

FR


No part of this work may be reproduced or used in any form or by any means (graphic, electronic,
or

mechanical including photocopying, recording, taping, or
information storage and retrieval
systems) without the

written permission of the copyright owner(s) in accordance with the terms of
the
GENESIS

Consortium Agreement(EC Grant Agreement 223996).


All rights reserved.


This document may change without notice.



GEN
eric
E
uropean
S
ustainable
I
nformation
S
pace for Environment

FP7
-
ICT
-
2007
-
Integrated project 223996

Deliverable :
D5600.1

Date

:

30/07/2010

Issue

:

1.00

Report On Scalable Service Infrastructure Assessment Activity


© Copyright 2008 2010

as per GENESIS Consortium Agreement.

Page
7

of
23


T
ABLE
O
F
C
ONTENTS

1.

INTRODUCTION

................................
................................
................................
.........

9

1.1

D
OCUMENT
O
VERVIEW
................................
................................
...............................

9

1.2

D
OCUME
NTARY
R
EFERENCE
S
YSTEM

................................
................................
.........

9

1.2.1

Applicable documents

................................
................................
...........................

9

1.2.2

Reference documents

................................
................................
...........................

9

1.3

A
BBREVIATIONS
,

T
ERMS AND
D
EFINITIONS

................................
................................

10

2.

OVERVIEW

................................
................................
................................
...............

11

3.

STATE OF THE ART

................................
................................
................................

12

3.1

R
ELEVANT
S
TANDARDS

................................
................................
...........................

12

3.1.1

Web Services

................................
................................
................................
.......

12

3.1.2

WS
-
Eventing

................................
................................

Error! Bookmark not defined.

3.1.3

WS
-
Notification

................................
................................
................................
....

12

3.1.4

Complex Event Processing

................................
........

Error! Bookmark not defined.

3.2

E
NTERPRISE
S
ERVICE
B
US
(ESB)

................................
................................
............

14

3.2.1

Introduction

................................
................................
.

Error! Bookmark not defined.

3.2.2

Petals open
-
source ESB

................................
.............

Error! Bookmark not defined.

3.3

E
VENT
D
RIVEN
A
RCHITECTURE
(EDA)

INTO AN
ESB

...

E
RROR
!

B
OOKMARK NOT DEFINED
.

4.

RECOMMENDATIONS ON S
TANDARDIZATION AND N
EW TECHNOLOGY
IMPROVEMENTS

................................
...........

ERROR! BOOKMARK NOT
DEFINED.

4.1

I
NTEGRATION OF
ESB

C
ONCEPTS INTO THE
GENESIS

A
RCHITECTURE
E
RROR
!

B
OOKMARK NOT DEFINED
.

4.1.1

Distributed Service Architecture

...............................

Error! Bookmark not defined.

4.1.2

Data intensive applications

................................
........

Error! Bookmark not defi
ned.

4.1.3

OGC Compliance

................................
........................

Error! Bookmark not defined.

4.2

L
INKING OF
OGC

SWE

S
ERVICES WITH AN
ESB

.........

E
RROR
!

B
OOKMARK NOT DEFINED
.

4.3

EDA

I
MPLEMENTATION FOR TH
E
GENESIS

S
ENSOR BASED
E
VENT
A
RCHITECTURE
E
RROR
!

B
OOKMARK NOT DEFINED
.

4.3.1

Integration of EDA concepts into an ESB

.................

Error! Bookmark not defined.

4.3.1.1

JBI Components enhanced as Notification Producers
Error! Bookmark not defined.

4.3.1.2

JBI Broker Component

................................
......

Error! Bookmark not defined.

4.3.2

Villerest illustrative use case

................................
.....

Error! Bookmark not defined.

4.4

S
UMMARY

................................
................................
.

E
RROR
!

B
OOKMARK NOT DEFINED
.

5.

IMPACTS ON
ARCHITECTURE

................................
................................
...............

20


GEN
eric
E
uropean
S
ustainable
I
nformation
S
pace for Environment

FP7
-
ICT
-
2007
-
Integrated project 223996

Deliverable :
D5600.1

Date

:

30/07/2010

Issue

:

1.00

Report On Scalable Service Infrastructure Assessment Activity


© Copyright 2008 2010

as per GENESIS Consortium Agreement.

Page
8

of
23


5.1

O
VERALL
GENESIS

ARCHITECTURE

................................
................................
........

20

5.2

U
SE OF THE RESULTS

................................
................................
..............................

21

5.3

A
DAPTATION OF THE ARC
HITECTURE
.

................................
................................
........

21

L
IST
O
F
F
IGURES

Figure 3
-
1: Publish/Subscribe
-
Paradigm

................................
..........

Error! Bookmark not
defined.

Figure 3
-
2: Subscribtion/Unsubscribt
ion

................................
...........

Error! Bookmark not defined.

Figure 3
-
3: Notification

................................
................................
.....

Error! Bookmark not defined.

Figure

3
-
4: Schematic view of the complex event processing approach

.........

Error! Bookmark not
defined.

Figure 3
-
5: Petals main components.

................................
................................
............................

17

Figure 3
-
7: EDA concepts

................................
................................

Error! Bookmark not defined.

Figure 4
-
1: GENESIS Architecture

................................
...................

Error! Bookmark not defined.

Figure 4
-
2: GENESIS Service Provider Node

................................
..

Error! Bookmark not defined.

Figure 4
-
3: Schematic illustration of the façade solution

...................

Error! Bookmark not defined.

Figure 4
-
4: GENESIS Event Driven Architecture

..............................

Error! Bookmark not defined.

Figure 4
-
5: Event management components

................................
....

Error! Bookmark not de
fined.

Figure 4
-
6: WS
-
Notification Broker c
omponents and interfaces

.......

Error! Bookmark not defined.

Figure 4
-
7: Petals ESB as a notification broker within GENESIS context.

......

Error! Bookmark not
defined.

Figure 4
-
8: Distributed architecture of the GENESIS demonstrator.

.

Error! Bookmark not defined.



GEN
eric
E
uropean
S
ustainable
I
nformation
S
pace for Environment

FP7
-
ICT
-
2007
-
Integrated project 223996

Deliverable :
D5600.1

Date

:

30/07/2010

Issue

:

1.00

Report On Scalable Service Infrastructure Assessment Activity


© Copyright 2008 2010

as per GENESIS Consortium Agreement.

Page
9

of
23



1.

INTRODUCTION

1.1

D
OCUMENT
O
VERVIEW


This document presents the results of WP6430 and WP6450 works resulting in a new component
compliant with GENESIS. This new component is an open source BPEL engine allowing GENESIS
geo
-
processing services
to be orchestrated in higher level services. It is useful for asynchronous
services that can be encapsulated in order for exceptions, errors and timeout to be managed.

1.2

D
OCUMENTARY
R
EFERENCE
S
YSTEM

1.2.1

Applicable documents

A1

GENESIS


Annex I to Grant Agreement


Part B


Description Of Work

Issue
9.10



15/03/2010









1.2.2

Reference documents

R1

Project glossary

R2

Project executive summary

R3

Vretanos
, P.A. (2005): Web Feature Service Implementation Specification. OpenGIS®
Implementation Specification. OGC 04
-
094. Version: 1.1.0

R4

Whiteside, A. & J.D. Evans (2008): Web Coverage Service (WCS) Implementation
Standard. OGC® Implementation Standard. OGC
07
-
067r5. Version 1.1.2

R5

Whiteside A. & J. Greenwood (2009): Candidate Revision: OGC Web Services
Common. OGC 06
-
121r7. Version 1.2.0

R6

Java Community Process. Java(tm) Business Integration (JBI) 1.0
-

Final Release. JSR
208, Sun Microsystems, Inc.,
August 2005.

R7

Dave Chappell, "Enterprise Service Bus: Theory in Practice", O'Reilly Media, June 2004
(1st edition)

R8

Steve Craggs, "Best
-
of
-
Breed ESBs
-

Making your choice", Global Integration Summit,
May 23
-
25, 2005, Banff, Canada

R9

Luckham D. C. 2
006, What’s the Difference Between ESP and CEP? Online

Article.
http://complexevents.com/?p=103, August 2006. Last visited: July

2008.

R10

Bass T. 2007, Mythbusters: Event Stream Processing versus Complex Event


GEN
eric
E
uropean
S
ustainable
I
nformation
S
pace for Environment

FP7
-
ICT
-
2007
-
Integrated project 223996

Deliverable :
D5600.1

Date

:

30/07/2010

Issue

:

1.00

Report On Scalable Service Infrastructure Assessment Activity


© Copyright 2008 2010

as per GENESIS Consortium Agreement.

Page
10

of
23


Processing. In DEBS '07: Proceedings of the
2007 inaugural

international conference on
Distributed event
-
based systems, pages 1



New v潲oI NvI rpAI ㈰〷. ACM.

oㄱ

p潵r捥c 桴t瀺LLwww.j扯獳s潲术摲潯l猠L

1.3

A
BBREVIATIONS
,

T
ERMS AND
D
EFINITIONS

Refer to [R1]


GEN
eric
E
uropean
S
ustainable
I
nformation
S
pace for Environment

FP7
-
ICT
-
2007
-
Integrated project 223996

Deliverable :
D5600.1

Date

:

30/07/2010

Issue

:

1.00

Report On Scalable Service Infrastructure Assessment Activity


© Copyright 2008 2010

as per GENESIS Consortium Agreement.

Page
11

of
2
3


2.

OVERVIEW

This report explains results on integration of open source tools to manage workflows. These tools
are the BPEL engine EasyBPEL, and the Petals ESB in which EasyBPEL is deployed. Indeed, the
GENESIS portal used first Oracle BPEL, a proprietary BPEL engine e
nhanced by some tools to
visualize and administrate workflows. The idea was to provide an open source alternative.

The mechanism of EasyBPEL is to be executed into an execution environment, as the JBI
-
based
Petals ESB. JBI mechanisms are used to deploy BPE
L workflows. Then in order to replace Oracle
tools, an additional feature must be provided in Petals ESB, in order to accept non
-
JBI deployment
requests coming from the GENESIS portal.

Moreover, main geo
-
processing services are asynchronous services using

the WS
-
Addressing
standard. This was managed in Oracle BPEL engine as a proper extended activity. In a same way,
an extended activity managing WS
-
Addressing is developed for EasyBPEL.

Main works have been then to expose a deployment interface upon Petals
ESB, compliant with
TODO SPB standard. Then an extended activity managing WS
-
Addressing for asynchronous
services has been developped for EasyBPEL.



GEN
eric
E
uropean
S
ustainable
I
nformation
S
pace for Environment

FP7
-
ICT
-
2007
-
Integrated project 223996

Deliverable :
D5600.1

Date

:

30/07/2010

Issue

:

1.00

Report On Scalable Service Infrastructure Assessment Activity


© Copyright 2008 2010

as per GENESIS Consortium Agreement.

Page
12

of
23


3.

STATE OF THE ART

This part describes relevant standards according to works on EasyBPEL engine and Petals E
SB.
They are mainly coming from Web Services standards.

3.1

R
ELEVANT
S
TANDARDS

3.1.1

Web Services

Web Services
as defined in this document
are software components that comply to tw
o main
standards, WSDL
1

and SOAP
2

(Please note: Within GENESIS usually a different definition is used,
as services like the OGC SWE services which currently do not possess a SOAP interface are also
considered as Web Services).

WSDL (Web Service Description Language) defines the syntactica
l structure of the programmatic
interface offered by a Web service. In particular, it defines the

operations offered by the Web
S
ervice in terms of their parameters and return value
s
.

SOAP (Simple Object Access Protocol) is the communicat
ion protocol being

used by Web
S
ervices. It is an XML bas
ed language, which

prescribes the structure that all me
ssages
exchanged between a Web S
ervice and its consumers should comply to. Both WSDL and SOAP
are independent of a specific programming language and of the transp
ort protocol being used. In
most cases, however, Web Services rely on HTTP as the transport protocol. This allows the
communication to pass through firewalls. Another standard that is related to Web Services is UDDI
(Universal Description Discovery & Integ
ration). It defines how to communicate with a registry for
publishin
g information about Web Service

interfaces and for discovering Web S
ervices.


.

3.1.2

WS
-
BPEL

WS
-
BPEL
3

is a
n OASIS

standard defined for services orchestration. Indeed Web Services are core
unit
s for SOA but are often used in combination with each other in order to provide higher level
services.

A WS
-
BPEL instance, that is also a service itself, can be seen as a conductor in

a
centralized way of execution, invoking several services while processi
ng.

The standard defines means of invoking services

based on WSDL definitions
, called partnerlinks,

and provides a set of control structures (as
conditional If and loops). It allows
building

execution
graphs understandable by BPEL engines.

The
Figure
3
-
1

shows a typical example of what can be found in GENESIS BPEL processes.
The
BPEL is represented as a set of nodes containing an activity:



First, the receiv
e activity allows a BPEL process to receive a message coming from the
external environment (the portal for instance). As a BPEL process is defined by a WSDL



1

http://www.w3.org/TR/wsdl

2

http://www.w3.org/TR/soap12
-
part1/

3

Stands for Business Process Execution Language.


GEN
eric
E
uropean
S
ustainable
I
nformation
S
pace for Environment

FP7
-
ICT
-
2007
-
Integrated project 223996

Deliverable :
D5600.1

Date

:

30/07/2010

Issue

:

1.00

Report On Scalable Service Infrastructure Assessment Activity


© Copyright 2008 2010

as per GENESIS Consortium Agreement.

Page
13

of
23


and is considered itself as a Web service, the receive activity corresponds to an input
message
of
an operation

of an interface defined for this BPEL process.



The assign activity allows
copying

some data into variables or partnerlinks.



The reply activity allows the BPEL process to answer a request by sending a message. It
corresponds to the output messa
ge of an operation of an interface defined for the BPEL
process.



The invoke activity allows to call Web services, called partnerlinks.



The pick activity allows to wait for multiple incoming messages

or alarms.

The sequence of the represented BPEL process
is to receive an incoming message from the
portal, to reply a acknowledgement in order to tell the requester the processing is accepted or not.
Then the BPEL process sends the request to the real Web service (Service A) that sends it self an
acknowledgemen
t. Then the pick activity waits for the Service A callback (until a defined time out).
The callback is finally forwarded to the portal thanks to the last invoke.


This asynchronous mechanism of callbacks

implies the use of metadata information in order for
services to know where to send them. This is done, in the context of Genesis, thanks to the WS
-
Addressing specification, that will be explained in the next section. It allows
basically
to add
callback a
ddress in message exchanges.


GEN
eric
E
uropean
S
ustainable
I
nformation
S
pace for Environment

FP7
-
ICT
-
2007
-
Integrated project 223996

Deliverable :
D5600.1

Date

:

30/07/2010

Issue

:

1.00

Report On Scalable Service Infrastructure Assessment Activity


© Copyright 2008 2010

as per GENESIS Consortium Agreement.

Page
14

of
23



Figure
3
-
1
:
Asynchronous BPEL process example.



3.1.3

WS
-
Addressing

WS
-
Addressing is a specification from
the W3C
, defining basically means for Web Services
addressing. It defines
EndpointReference

type and message information headers. The first
construct contains an address localizing a Web Service. The second construct allows to correlate
message exchanges between each other (messageID).


It is used in GENESIS context in SOAP headers of messages sent by services.
In the
Figure
3
-
1

WS
-
Addressing is used in the portal request in order for the BPEL engine
to know where to send
the final callback, and by the BPEL process itself in order to tell the Service A where to send the
callback.

3.1.4

Enterprise Service Bus (ESB
)

The key item for integration of services within a SOA is the Enterprise Service Bus (ESB). The
goal
of an ESB is to provide virtualization of the enterprise resources, allowing the business logic of the

GEN
eric
E
uropean
S
ustainable
I
nformation
S
pace for Environment

FP7
-
ICT
-
2007
-
Integrated project 223996

Deliverable :
D5600.1

Date

:

30/07/2010

Issue

:

1.00

Report On Scalable Service Infrastructure Assessment Activity


© Copyright 2008 2010

as per GENESIS Consortium Agreement.

Page
15

of
23


enterprise to be developed and managed independently of the infrastructure, network, and
provision of those business services.

The
Enterprise Servic
e Bus (ESB) is a new class of integration tools. It supports integration and is
also characterized by transformation and routing functions. More in
-
depth descriptions of the ESB
concept are available in
(R7, R8)
.

Originally, first commercial ESB products w
ere described both as a way to integrate existing
middleware services (J2EE application servers, message
-
oriented brokers, etc.) and products
(e.g., B2B solutions) and to connect applications with the required protocols. More recently, since
the advent of
the SOA approach, ESBs have also been presented as a way to create a SOA.

ESBs clearly face two major challenges:



How to integrate heterogeneous technology and products, possibly produced by
different

vendors, in a way that is appropriate with respect to t
he size of each particular integration
problem?



How to provide the required features to fully address the specifics of SOA needs?

The Java business Integration (JBI) standard seeks to address the first challenge by adopting the
SOA principles. An ESB is b
uilt from JBI containers that can be an integration framework, a host
for Java connectors, an XSLT engine, a mediation engine, a service orchestrator, etc. JBI
maximizes the decoupling between the JBI containers that all provide and consume services. The
E
SB links the containers together, allowing them to interact.

Currently, it turns out that JBI
-
compliant ESBs are mostly open
-
source ESBs that aim at promoting
highly configurable and made
-
to
-
measure ESBs in order to better fit business needs.

For instance,

ServiceMix

ESB is an Apache project

delivered with the Apache
l
icence
,

providing an Hub and
Spoke architecture;
Open

ESB
, delivered with a CDDL licence
4

is not distributed;
and Petals ESB
delivered with the LGPL licence
5
. Petals

ESB is the only project that natively provides a distributed
framework
composed of nodes, allowing the design of very large scale systems
.
For instance it is
involved in the creation of Service Clouds in the SOA4ALL project
6
.

Another

particularity of this
project is its will to be

fully compliant with all SOA standards such as
JBI,
WSDL
, BPEL,
SCA and
more recently WS
-
* specifications.


The JBI specification has been standardized by the Java Community Process (JCP) expert group.
The
JBI specification promotes a plug
-
in based architecture which enables the creation of tailored
integration solutions by putting together the best
-
of
-
breed integration components. One of the main
interest for using JBI compliant software in an ESB is that i
t is based on Web Services best
practices (WSDL usage, loose coupling, XML messaging).

Companies
may

currently
be
struggling with the second challenge, as they
might
realize that an
ESB vendor's solution does not fit their needs. The reasons are manifold:
for example, the ESB
does not provide management models to control and enforce QoS at different levels and track
consumer usage; it does not fit into existing management and security frameworks; it is unable to
connect to or evolve towards
B2B

archite
cture. This problem will still be open, as long as SOA
technology editors do not address the immediate and long
-
term business needs, and concrete
functional SOA.




4

http://www.sun.com/cddl/cddl.html

5

http://www.gnu.org/licenses/lgpl.html

6

http://www.soa4all.eu/


GEN
eric
E
uropean
S
ustainable
I
nformation
S
pace for Environment

FP7
-
ICT
-
2007
-
Integrated project 223996

Deliverable :
D5600.1

Date

:

30/07/2010

Issue

:

1.00

Report On Scalable Service Infrastructure Assessment Activity


© Copyright 2008 2010

as per GENESIS Consortium Agreement.

Page
16

of
23


Petals ESB

is an Open Source (LGPL License) Enterprise Service Bus provided by the OW2
middlew
are consortium.
Petals ESB

is built with and on top of agile technologies such as:



The Java Business Integ
ration (JBI) v1.0 specification

(R6)
:

Petals ESB

has recently been
certified by SUN Microsystems as a valid JBI implementatio
n




The Fractal Software
Component Framework

provided by the OW2 consortium:

Fractal is a
modular and extensible component model that can be used with various programming
languages to design, implement, deploy and reconfigure various systems and applications,
from operating system
s to middleware platforms and to graphical user interfaces. From the
Petals ESB
’s point of view, all the container services (such as service registry, message
router, message transporter, discovery, etc.) are implemented as Fractal components. This
is a ma
jor feature which allows core developers to specialize a
Petals ESB

distribution by
choosing the software components to be used for specific needs.

The main
Petals ESB

feature is that it extends the JBI specification by providing a distributed vision
of t
he JBI platform. Several
Petals ESB

containers distributed across several nodes are equivalent
to a single unified
Petals ESB

container. Thanks to this approach, all the services remain
accessible as they are in a typical standalone JBI environment. Where
other JBI containers provide
a distributed approach by connecting containers with the use of JBI Binding Components plus
h
uge configuration,
Petals ESB

provides this feature natively without any additional configuration.
This distributed behaviour is provi
ded by the following software components

(presented in
Figure
3
-
2
)
:



The technical registry:

The
Petals ESB

JBI services, endpoints, interfaces, WSDL
description

and c
ontainer location are stored in the technical registry. This registry is used
by the
Petals ESB

container to register services and to route the JBI messages to the right
endpoint. The registry entries are actually replicated among all the
Petals ESB

nodes
using
a Distributed Hash Table over a multicast channel. This is quite equivalent to data flooding
between registries, i.e., when an entry is added to the registry, the data is sent to all the
network registries. So all the registries have a complete visio
n of the services hosted by all
the containers. This approach is the base of the unified bus but is not scalable at all.



The message transporter:

This layer is not defined in the JBI specification. Its role is to
exchange JBI messages between containers.
In a standard JBI implementation, the
Normalized Message Router gets the local endpoint reference from the local registry and
sends the message to local JBI endpoint
s
. In the
Petals ESB

approach, once the endpoint
transport layer which is in charge to deli
ver the message to the JBI endpoint whatever the

container it is hosted on.


GEN
eric
E
uropean
S
ustainable
I
nformation
S
pace for Environment

FP7
-
ICT
-
2007
-
Integrated project 223996

Deliverable :
D5600.1

Date

:

30/07/2010

Issue

:

1.00

Report On Scalable Service Infrastructure Assessment Activity


© Copyright 2008 2010

as per GENESIS Consortium Agreement.

Page
17

of
23




Figure
3
-
2
:

Petals main components.

Petals ESB

is

not a simple JBI container. The project also provides various frameworks,
components and tools for extension, service integration, management and monitoring purposes:



The Component Development Kit (also named CDK) is a software framework which
abstracts
all the JBI related API and provides an easy way to create high performance JBI
components (Service Engines and Binding Components) with a small set of classes.



All the JBI components are based on the previously cited CDK framework. The actual
collection of
Petals ESB

JBI components is composed of binding components (provide
connectivity to/from external services) like SOAP, FTP, JDBC, and foreseen in the project,

to the semantic space, and service engines (provide internal technical services) like BPEL,
BPMN, XSLT, EIP, RULES, SCA.



The WebConsole is a Web GUI used to monitor and manage the
Petals ESB

containers.
This tool provides a single access point to monitor

and manage all the distributed
containers. The console is connected to the containers through a JMX based data collector
which is a mediator between the console and all the
Petals ESB

containers.

The Petals ESB architecture consists in a distributed topology of nodes (as presented in
Figure
3
-
3
) that communicate over internet. This characteristic al
lows moving the ESB closer to every
partner involved in services integration. The
Figure
3
-
3

illustrates this specific architecture with
some integrations examples. Business services provided by the bus, like a BPEL engine or XSLT
transformation can be used on every node provided that the corresponding component is
deployed.



Registry

Transporter


GEN
eric
E
uropean
S
ustainable
I
nformation
S
pace for Environment

FP7
-
ICT
-
2007
-
Integrated project 223996

Deliverable :
D5600.1

Date

:

30/07/2010

Issue

:

1.00

Report On Scalable Service Infrastructure Assessment Activity


© Copyright 2008 2010

as per GENESIS Consortium Agreement.

Page
18

of
23



Figure
3
-
3
:

Distributed aspect of Petals ESB.




4.

NEW COMPONENTS FOR S
ERVICES ORCHESTRATIO
N

The w
orks on
WP6430 and WP6450 result in integrating
PetalsESB
and
EasyBPEL
in
Workflow
deployment.

Some extensions have been developed in order to perform this integration.


4.1

P
ETALS
ESB

EXTENDED SERVICE FOR

BPEL

D
EPLOYMENT

Petals ESB is by default a JBI
-
based bus, with JBI mechanisms of service deployment and
invocation.

In particular, configuration
artefacts are

defined for service deployment :



The Service Unit (SU) is a zip file containing a configuration file with information about
interface / service / endpoint deployed, a WSDL describing the service to be deployed, and
specific files related to t
he service. For example, a SU built to deploy a BPEL process will
contain a BPEL file (and WSDLs of its partnerlinks).



The Service Assembly (SA) is also a zip file containing a set of SUs that are assembled
according to a
particular service project.

These
SAs are generally deployed onto the bus thanks to JMX connection. In the context of a
BPEL process deployement, the following SUs are to be expected:



A SU providing the BPEL process service (representing the W1 red endpoint in
Figure
4
-
1
).



A SU exposing this BPEL process service outside the bus (in order to be visible by the
portal for instance). This is represented in the figure by the W1 blue endpoint.


GEN
eric
E
uropean
S
ustainable
I
nformation
S
pace for Environment

FP7
-
ICT
-
2007
-
Integrated project 223996

Deliverable :
D5600.1

Date

:

30/07/2010

Issue

:

1.00

Report On Scalable Service Infrastructure Assessment Activity


© Copyright 2008 2010

as per GENESIS Consortium Agreement.

Page
19

of
23




Some SUs import
ing external Web Services (S1, S2, … Sn)
involved in the BPEL process
and making them visible inside the bus.



Figure
4
-
1
:

Deployed services for BPEL process installation.


In the GENESIS context, workflow deployment is expected to be
performed according to a
specification (TODO SPB). Basically it consists in a XML file containing WSDLs, XML Schemas
and the BPEL to deploy. In order to be compliant with
this
mechanism, an addi
tional administration
interface (represented by the A blue endpoint in
Figure
4
-
1
)

has been developed. It consists
in an
automatic generation of the SA described
above

that

is then deployed in a
nominal

way.



4.2

E
ASY
BPEL

EXTENDED ACTIVITY

As we saw before, WS
-
Addressing is used in order to manage services asynchronism.
It implies
that the BPEL engine executing the workflow is able to send messages containing meta
-
data about
callback address.
It is done thanks to an extended activity developed upon EasyBPEL engine.

It consists in adding a specific attribute into invoke ac
tivities, corresponding to a variable containing
particular
Endpoint
Reference (e.g a ReplyTo construct).

This attribute is then used to build the
SOAP header of the external message sent to the Web Service.

WS
-
BPEL extensibility is foreseen
and consists in

our case in the following extracts to add in the
BPEL file.

First we have to define the WS
-
Addressing extension as following:

<ns6:extensions>


<ns6:extension



namespace=

"http://easybpel.ebmwebsourcing.com/extension/activities/package/invokeaddressing"



mustUnderstand="yes">


</ns6:extension>

</ns6:extensions>

Then WS
-
Addressing headers have to be set. We use here the BPEL Assign activity:


GEN
eric
E
uropean
S
ustainable
I
nformation
S
pace for Environment

FP7
-
ICT
-
2007
-
Integrated project 223996

Deliverable :
D5600.1

Date

:

30/07/2010

Issue

:

1.00

Report On Scalable Service Infrastructure Assessment Activity


© Copyright 2008 2010

as per GENESIS Consortium Agreement.

Page
20

of
23



<
bpel
:assign name="af
fectReplyTo">


<bpel
:copy>


<
bpel
:from>




<
bpel
:literal>



<wsa:ReplyTo xmlns:wsa="http://www.w3.org/2005/08/addressing">


<wsa:Address>

http://soap
-
g
enesis.ebmwebsourcing.com/petals/services/RasterResamplingCallbackPort



<
/wsa:Address>



</wsa:ReplyTo>


</
bpel
:literal>


</
bpel
:from>



<
bpel
:to variable="rasterCallback" />


</
bpel
:copy>

</
bpel
:assign>

We assign here a ReplyTo value to the rasterCallback variable.

Finally a special invoke has to be used:

<
bpel
:extensionActivity>


<inva:invokeaddressing name="invoke1"




partnerLink="asynProvider"



portType="wpsServiceNS:RasterResampling"


operation="
ExecuteProcess_RasterResampling_ASYNC"


inputVariable="wpsAsynServiceInputMessage"



outputVariable="wpsAsynServiceOutputMessage"



header
="rasterCallback"

/>

</
bpel
:extensionActiv
ity>

The additional attribute header is used to add WS
-
Addressing metadata in the message going to
be sent by the BPEL engine.







5.

IMPACTS ON ARCHITECT
URE

The aim of this part is to summarize the main concepts that drive the GENESIS architecture, to
give information about the impact of the studies carried on by this
Work Package

and to specify
main improvement drivers.

5.1

O
VERALL
GENESIS

ARCHITECTURE

The GENESI
S workflow deployment architecture consists in a Web service
-
based mechanism
b
ased on a WPS standard using

WS
-
BPEL and WS
-
Addressing. A BPEL engine administration
available as a Web Service
performs
generated workflows.



GEN
eric
E
uropean
S
ustainable
I
nformation
S
pace for Environment

FP7
-
ICT
-
2007
-
Integrated project 223996

Deliverable :
D5600.1

Date

:

30/07/2010

Issue

:

1.00

Report On Scalable Service Infrastructure Assessment Activity


© Copyright 2008 2010

as per GENESIS Consortium Agreement.

Page
21

of
23


5.2

U
SE OF THE RESULTS

EasyBPEL provide
s an
open source
alternative

for Oracle BPEL engine.
Thanks to the extended
service of workflow deployment
exposed by
the Petals ESB, the portal client can use the same
request format for either Oracle BPEL either EasyBPEL engine.

5.3

A
DAPTATION OF THE
ARCHITECTURE


The integration of EasyBPEL within the GENESIS workflow deployment architecture

implies few
adaptations. First, EasyBPEL

is compliant with the version 2.0 of WS
-
BPEL standard whereas the
Oracle BPEL engine works with the 1.1 version. The second adaptation concerns the BPEL
processes content, since extended activities are proper to their engines (namespace, structure).

Main
differences between the versions of WS
-
BPEL are:



Namespaces:

Standard

V1.1

V2.0

BPEL

http://schemas.xmlsoap.org/ws/2003/03/business
-
process/

http://docs.oasis
-
open.org/wsbpel/2.0/process/executable

PartnerLinkType

http://schemas.xmlsoap.org/ws/2003/05/pa
rtner
-
link/

http://docs.oasis
-
open.org/wsbpel/2.0/plnktype




Some activities name replace (switch in 1.1 became if in 2.0)



Some constructs are slightly different (as for partnerlink types definitions):

In BPEL 1.1:

<plnk:partnerLinkType name="
GimRasterResamplingPLT ">


<plnk:role name="gimRole
">


<plnk:portType name="tns:
RasterResampling" />


</plnk:role>

<
/
plnk:partnerLinkType
>

Whereas in 2.0:

<plnk
:partnerLinkType name="GimRasterResamplingPLT">


<
plnk
:role
name="gimRole"


portType="tns:RasterResampling"
/>

</
plnk
:partnerLinkType>



The workflow generat
ion

must be able to manage these slight
differences depending on the portal
client choice.

Finally, (BPEL) services deployed in PetalsESB

can be visualized and administr
ated thanks to the
Web Console tool (stop/start, uninstall, etc.).



GEN
eric
E
uropean
S
ustainable
I
nformation
S
pace for Environment

FP7
-
ICT
-
2007
-
Integrated project 223996

Deliverable :
D5600.1

Date

:

30/07/2010

Issue

:

1.00

Report On Scalable Service Infrastructure Assessment Activity


© Copyright 2008 2010

as per GENESIS Consortium Agreement.

Page
22

of
23



GEN
eric
E
uropean
S
ustainable
I
nformation
S
pace for Environment

FP7
-
ICT
-
2007
-
Integrated project 223996

Deliverable :
D5600.1

Date

:

30/07/2010

Issue

:

1.00

Report On Scalable Service Infrastructure Assessment Activity


© Copyright 2008 2010

as per GENESIS Consortium Agreement.

Page
23

of
23



END OF DOCUMENT