Sei sulla pagina 1di 24

java.sun.

com/javaone/sf
| 2004 JavaOne
SM
Conference | Session TS-2941 1
Building Service-
Oriented Architectures
With Java2
Platform, Enterprise
Edition (J2EE)
Ted Farrell
Chief Architect, Application Development
Oracle Corporation
| 2004 JavaOne
SM
Conference | Session TS-2941 2
Agenda
Service-Oriented Architectures
SOA on the J2EEPlatform
Best Practices
Demonstration
Q&A
| 2004 JavaOne
SM
Conference | Session TS-2941 3
Service-Oriented Architectures
Decouple architecture from implementation
! Loosely - coupled interfaces
! Multi - channel access across different tiers
Process-oriented vs. component-based
Orchestration
! Process flow between services
! Data mapping/transformation
Evolving business models
! Technology changes and new business requirements
! Continuous small changes vs. sporadic large ones
| 2004 JavaOne
SM
Conference | Session TS-2941 4
Benefits of SOA
Better reuse
! Build new client functionality on top of
existing Business Services
Well-defined interfaces
! Make changes without affecting clients
Easier maintainability
! Changes/versions are not all-or-nothing
Better flexibility
| 2004 JavaOne
SM
Conference | Session TS-2941 5
SOA Across the Enterprise
receive
get order get props
get desc.
SCOPE
FLOW
reply
receive
ship order send msg
FLOW
reply
Business
Services
| 2004 JavaOne
SM
Conference | Session TS-2941 6
Service-Oriented Interface
The interface contract to the service is
implementation-independent
The service can be dynamically invoked
! Runtime binding
The service is self-contained
! Maintains its own state
Examples
! Web Services
! WSRP
! Data Control (JSR 227)
| 2004 JavaOne
SM
Conference | Session TS-2941 7
Web Service
WSDL for definition
SOAP for protocol
UDDI for lookup
True implementation and OS independence
| 2004 JavaOne
SM
Conference | Session TS-2941 8
Business Process Execution
Language (BPEL)
WSDL for definition
! High-level business definition
! Low-level technical definition
XPath for expression language
XML Schema for data typing
Protocol independent
! Definition
! Binding
WSDL
| 2004 JavaOne
SM
Conference | Session TS-2941 9
Web Services Interchange
Format (WSIF)
Framework for WSDL Bindings
! Open source
! Extendable
Technology-specific adaptors
! SOAP
! Java Cryptography Architecture (JCA)
! EJB specification
! Java Message Service (JMS)
! Etc.
| 2004 JavaOne
SM
Conference | Session TS-2941 10
Web Services Interchange
Format (WSIF)
WSIF
JCA EJB
SOAP
Generic Definition
App Server JCA
Native Objects
Generic Objects
WSDL
| 2004 JavaOne
SM
Conference | Session TS-2941 11
Web Services for Remote
Portals (WSRP)
WSDL for definition
SOAP for protocol
UDDI for lookup
Meta information for:
! User context
! Device information
! Locale
! Publishing information
| 2004 JavaOne
SM
Conference | Session TS-2941 12
Data Control (JSR 227)
SOI for data binding data into user interfaces
What about Web Services?
! Consistent definition
X Conversion to XML
X Binding-specific attributes
Too specific for general service
X Overhead for native
(EJB spec, Java class, etc.) types
Data Control
! Consistent definition
! No conversion of data
! Native communication to services
| 2004 JavaOne
SM
Conference | Session TS-2941 13
Data Control Architecture
Client
Data Control
EJB JCA WS
App Server WS
Client
Server
Generic Objects
Native Objects
| 2004 JavaOne
SM
Conference | Session TS-2941 14
The Implementation Is the Service
Performance
Scalability
Transactions
Caching
Clustering
Capabilities/choice
Integration into legacy systems
Optimizations
| 2004 JavaOne
SM
Conference | Session TS-2941 15
Same
Objects
Vendors
Server
Optimizing Your SOA
Interface-only
! XML, WSDL, SOAP, HTTP, BPEL, WSRP
Same technology (Good)
! JSR 207 Process Definition for Java Technology
! JSR 208 Java Business Integration
! JSR 235 Service Data Objects
! JSR 227 Declarative Data Binding
! JSR 168 (Portal)
Same server (Better)
! Optimized XML
! By-pass network calls
! Shared connections
Same container (Best)
! Native communication
! Integrated cache, etc.
J2EE
Anyone
| 2004 JavaOne
SM
Conference | Session TS-2941 16
J2EE Platform for SOAs
More vendor support
! More common technologies
! More optimization
Increased chance of optimized
implementation
! Standard definitionsoptimized
implementation
! WSIF Adaptor for the J2EE platform?
!Optimized when both the
J2EE platform
!SOAP when mixed
!No change for developer
More platform support
! Better legacy access
Same
Objects
Vendors
Server
J2EE
Anyone
| 2004 JavaOne
SM
Conference | Session TS-2941 17
Where Are Your Services?
Interfaces to existing functionality
! Service-oriented interfaces
!From existing APIs (EJB, Beans, etc.)
!New APIs (refactoring and delegation)
! Security
! State Management
New interfaces to new functionality
| 2004 JavaOne
SM
Conference | Session TS-2941 18
What Are Your Interfaces?
Web Services
! Wrap all functionality as Web Services
! Map all data into XML
! Translate and load all data into/out of XML
! SOAP
What else?
| 2004 JavaOne
SM
Conference | Session TS-2941 19
Choosing a Service-Oriented Interface
Consistent interface
! Targeted at function
! Hide implementation
! Expose capabilities
Generic data description
! Reduce runtime overhead
Consider the clients
! Now and future
Mutually agreed upon
! Standards when they fit
! Extend standards where they dont
! Submit standards when possible
| 2004 JavaOne
SM
Conference | Session TS-2941 20
Demo
Building an End-to-end
Application Using SOA
| 2004 JavaOne
SM
Conference | Session TS-2941 21
Summary
Services-oriented architectures
! Running back-end business processes
! Feeding front-end user interfaces
Pick the right interface for the job
! Consider the clients
! Utilize standards
! Take advantage of optimizations
SOA on the J2EE platform
! Choice
! Diversity
! Optimization
| 2004 JavaOne
SM
Conference | Session TS-2941 22
For More Information
BOF-1917: XML and J2EE Technology-
Based Information IntegrationReal-World
Experiences and Case Studies
TS-3203: On the Road to SOA: Building
Real-World Enterprise Web Services
Oracle Booth #601
| 2004 JavaOne
SM
Conference | Session TS-2941 23
Q&A
java.sun.com/javaone/sf
| 2004 JavaOne
SM
Conference | Session TS-2941 24
Building Service-
Oriented Architectures
With Java2
Platform, Enterprise
Edition (J2EE)
Ted Farrell
Chief Architect, Application Development
Oracle Corporation

Potrebbero piacerti anche