Sviluppare applicazioni basate su BPEL utilizzando ...

adorableautomaticΛογισμικό & κατασκευή λογ/κού

15 Αυγ 2012 (πριν από 5 χρόνια)

450 εμφανίσεις


1
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007

1
Sviluppare applicazioni basate
su BPEL utilizzando NetBeans e
JBI
Corrado De Bari
corrado.debari@sun.com
http://blogs.sun.com/cdb

2
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
Agenda

Integration market history and future

JBI overview

Introduction to Open ESB

BPEL SE, Java EE SE

Demo

3
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
Integration Market
- History and Future

4
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
Operating

System
Hard-coded,
point-to-point
integration
interfaces
The 80s
Operating System
Early 90s
OS-specific tools
(compilers, etc.)
OS-specific tools
(compilers, etc.)
Integration Brokers
and tools
dedicated to
integration
In the early 90s, Integration
Broker software allowed
organizations to leverage
integration-specific tools
(adapters, transformation
engines, etc.) to accelerate
development of integration
solutions
In the 80s,
organizations
built integration
paths by doing
custom coding
for point-to-point,
hard-coded,
application
interfaces
While this allowed for acceleration
of development efforts and re-use of
investments, efforts were still very
much focused on integration within
the four walls of the enterprise
Tracking the evolution of Integration…
Efforts would
leverage only low
level,
OS-specific tools
and facilities (such
as compilers)

5
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
Tracking the evolution of Integration…
Operating

System
Hard-coded,
point-to-point
integration
interfaces
The 80s
Operating System
Early 90s
OS-specific tools
(compilers, etc.)
OS-specific tools
(compilers, etc.)
Integration Brokers
and tools
dedicated to
integration
Operating System
Late 90s
OS-specific tools
(compilers, etc.)
Integration Suites
with tools
dedicated to
A2A, B2B, and BPM
SeeBeyond 3.x
The genesis of the
Integration
Suite
: in the late 90s,
integration software expanded
rapidly to offer tools focused on
areas beyond “traditional A2A”,
namely BPM and B2B

furthermore, customers
are still forced into
developing solutions based
on proprietary vendor
architectures
Integration Brokers
and tools
dedicated to
integration

6
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
Operating

System
Hard-coded,
point-to-point
integration
interfaces
The 80s
Operating System
Early 90s
OS-specific tools
(compilers, etc.)
OS-specific tools
(compilers, etc.)
Operating System
Late 90s
OS-specific tools
(compilers, etc.)
Operating System
Early 00s
Composite
Application
and
Integration Suites
SeeBeyond 4.x
SeeBeyond 3.x
In the early 2000s, some of the
Integration vendors elevated
their products to composite
application development
platforms offering an extensive
array of tightly integrated tools
While this allowed for integration
developers to approach integration
problems with an arsenal of tools
affording a better and closer fit to the
nature of the problems, the tool
arsenals were still proprietary to the
vendor architectures
Tracking the evolution of Integration…
Integration Suites
with tools
dedicated to
A2A, B2B, and BPM
Integration Brokers
and tools
dedicated to
integration
Java EE AS

7
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
Operating

System
Hard-coded,
point-to-point
integration
interfaces
The 80s
Operating System
Early 90s
OS-specific tools
(compilers, etc.)
OS-specific tools
(compilers, etc.)
Operating System
Late 90s
OS-specific tools
(compilers, etc.)
Operating System
Early 00s
Composite
Application
and
Integration Suites
SeeBeyond 4.x
SeeBeyond 3.x
Tracking the evolution of Integration…
Integration Suites
with tools
dedicated to
A2A, B2B, and BPM
Integration Brokers
and tools
dedicated to
integration
Java EE AS
Operating System
Standards-based
(Java EE)
infrastructure
containers
Standards-based
Composite
Application
and
Integration
Ecosystems.
Standards-based
(JBI)

integration
containers
The genesis of
standards-
driven
Composite Application
and Integration
ecosystems
enabling mass adoption by
both end-developers and
software vendors

8
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
To do?
A2A
B2B
BPM
Workflow
Portal
Master
Data
Bus
Logic
ETL
BAM
Master Data
Mgmt
B2B
BL
A2A
BL
BAM
B2B
B2B
Portal
Workflow
B2B
Portal
A2A
ETL
Authentication / Identity Management
Application Server / Deployment

9
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
JBI in a Nutshell

10
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
What Is JBI?

Standard “meta-container” for integrated
services

Provides for plug-in:

Service Engines: business logic

Bindings: communications protocols

Standard component lifecycle

Standard deployment model

Loose coupling via WSDL message
exchanges between WSDL described
Services

11
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
What is JBI?
JBI
Core
Services
J2SE

/J2EE

Platforms
S
y
stem
M
anag
em
ent
Installation
Deployment
Management
Normalized Message Router
Normalized Message Router
Protocol Binding
Components
Service Engines

12
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
Example SEs & BCs
JBI
Core
Services
Normalized Message Router
Normalized Message Router
J2EE

Platform
S
ystem
M
anag
em
ent
Orchestration
(BPEL)
Transformation
(XSLT)
J2EE Platform
AS2
JMS
WS-I Basic
SOAP

13
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
JBI
Core
Services
Normalized Message Router
J2EE Platform
S
yst
em
M
anag
em
ent
Orchestration
(BPEL)
Transformation
(XSLT)
J2EE Platform
AS2
JMS
WS-I Basic
SOAP
Service Provider Self-
Description
WSDL
WSDL
WSDL
WSDL
WSDL
WSDL
Components register the
services they provide

14
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
Java Business Integration
(JSR 208)

XQuery
JavaEE
Process
Rules
Xform
Soap
Route
MOM
WSDL/
Soap
WSDL/
Soap
BPEL
BPEL
EJB
XQ
uery
Rule
Routing
Table
XSLT
Deploy
Install
NMR
JBI
Composite Service



15
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
JBI and ESBs

16
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
Open ESB

17
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
Open ESB Architecture

18
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
IDE
Web Server
BPEL
Editor
Java EE
SE
JBI Bus
XSLT
SE
HTTP
BC
FTP
BC
FTP
BC
Many More
SEs…
FTP
BC
Many More
BCs…
App Server
XSLT
Editor
Composite
Application
Project
IEP Editor
Composite
Application
Manager
Runtime
BPEL
SE
Java EE
EJBs
Servlets
Java EE
SE
JBI Bus
XSLT
SE
HTTP
BC
FTP
BC
FTP
BC
Many More
SEs…
FTP
BC
Many More
BCs…
Ap
p Serv
e
r
BPEL
SE
Java EE
EJBs
Servlets
Design-Time
Management
3
rd
Party
Service
Platforms
3
rd
Party
Service
Platforms
Open Standard Based
Service Bus
WS-Reliable Messaging
WS-Security
WS-FastInfoSet, …
Many More
Editors
Many More
Editors
IEP
Monitor
BPEL
Monitor
XSLT
Monitor
Many More
Editors
Many More
Monitors
Open ESB Overview
HHHHHHHHHHHHHHHHHHHHHHHHHH
19
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
OpenESB Architecture
Normalized Message Router
HTTP Binding
Component
System
Management
Layer
Binding
Component
Service Engine
Java EE
Service Engine
EJB
Application
BPEL
Service Engine
Java EE Container
(
“App Server”
)
EJB
Application
Web
Application
Web Container
(
“App Server”
)
Web
Application
External
Service
Consumer
JMX Based Admin tools
(
CAM
/
App Server Admin
Console
/
NetBeans
)
HTTP Binding
Component
External
Service
Provider
JBI Container
Sun Java App Server
9
.
2
(
Glassfish
)

20
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
OpenESB Components

Service Engines

BPEL SE

XSLT SE

JavaEE SE

IEP (BAM) SE

ETL SE

SQL SE

Workflow SE

Binding Comps

MQSeries BC

HL7 BC

SAP BC

SMTP BC

HTTP BC

JMS BC

File BC

CICS BC

DCOM BC

CORBA BC.

Other

Clustering

CASA

WSIT Tech

21
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
Top-Ten About Open-ESB

Open Source

Open Standard – JBI, WS-* etc

Interoperable – ecosystem (both open source, commercial)

Extensible – Pluggable

Wealth of language support – Java, BPEL, SQL, Scripting

Fully featured IDE

Composite Apps and Services

Clustering

Augments Java EE

Convergence with Java CAPS

22
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
BPEL SE

Standards

WS - BPEL 2.0

WSDL1.1

Major Features

Provides and consumes web services

Endpoint status monitoring

Mutliple-thread execution

Debugging of business processes

Clustering and Persistencel

BPEL Editor

BPMN

Debugger

23
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
Http BC

Standards

SOAP 1.1, WS-I 1.0 + additional no conformance support

WSDL1.1

Major Features

Based on project Metro (JAXWS + WSIT)

Support for Doc-lit and RPC-lit

Embedded Grizzly Http Server

Asynchronous I/O (NIO) – Scalability

Clustering and Persistence

Integration with Access Manager

24
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
Java EE S.E. As a Bridge

25
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
Java EE S.E. Use Cases

BPEL Service Engine calling an Enterprise Java Bean
web service

Message Driven Bean or Servlet calling a BPEL Process

Enterprise Java Bean web service called through a
JMS transport using the JMS Binding Component.

Java EE components making web service calls through
SMTP transport using the SMTP Binding Component

26
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
Java EE S.E. as a Service
Provider

27
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
Java EE S.E. as a Service
Consumer

28
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
Glassfish

V2: Enterprise ready with
scripting support (JRuby)

Available for Solaris, Windows,
Linux and OSx

OpenESB bundled

WSIT bundled

29
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
NetBeans
Over
10 M
IDE downloads and gaining
momentum
Over
4 M
page views per month
Over
450 K
mailing list subscribers
Tripled active user base in the past two
years
Over
100
partner endorsements

30
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
CompApp Service Assembly
Editor

31
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Corrado De Bari - corrado.debari@sun.com – Sun Microsystems Italia Spa
Javaday Roma - 01/12/2007
Riferimenti
Creating a Simple SOA Application With NetBeans
http://www.netbeans.org/kb/60/soa/simple-soa-app.html
Creating a "Hello World" Composite Application
http://www.netbeans.org/kb/60/soa/helloworldca.html
Creating a Loan Processing Composite Application
http://www.netbeans.org/kb/60/soa/loanprocessing.html