Building Service Oriented Architectures with Java and Web Services

Document Sample
Building Service Oriented Architectures with Java and Web Services Powered By Docstoc
					Building Service Oriented
Architectures with Java and
Web Services
NY Java SIG Meeting – Feb 1st, 2005

Ashutosh Kulkarni, Group Mktg Manager
   SOA
    v/s
Web services
The Solution is SOA


  ●Service Oriented Architecture
  (SOA) is an integrated software
  infrastructure and design approach,
  leveraging Web computing
  standards, for delivering business
  functions as shared services.
SOA vs. Web Services
●   Web Services
    –   Business logic exposed as self-describing,
        loosely coupled, reusable services
    –   Uses low level protocols and infrastructure
●   Service Oriented Architecture
    –   Integrates web services architecture with
        legacy systems in a loosely coupled way.
    –   Enables higher level IT functionality, such as
        Identity, Security, Management, BP modeling
Before SOA



          Traditional EAI Middleware
          MOM                          S2
          Integration Broker Suites

     S1
SOA Architecture


                Web Computing
       S1       Standards              S2
                (Internet)
                       Computing
   SOA                             SOA
                       Approach
   Middleware                      Middleware
Service Integration
A Service as a
Component
A Composite
Application
Service Integration – many
Technologies and artifacts
JSR 208: New Container for
Service Integration
  JSR 208: Java
Business Integration
JSR 208 Architecture
 Orchestrati Transformatio
                                                        Other Service
      on           n                         J2EE
                                                           Engines




                                                                                                         Logger
    (BPEL)       (XSLT)
      WSD         WSD                        WSD               WSD
         L               L                    L                 L




                                                                                 Management

                                                                                              Deployment
                                                                     JBI Core




                                                                                  Discovery
                                                                                   System
                                                                     Services




                                                                                                   &
             Normalized Message Service                            Installation
                                                                   Deployment
                                                                  Management




                                                                                         Console
                                                                Component Registry




                                                                                         Admin.
         WSD
                       WSDL           WSDL            WSDL
          L
  WS-I Basic +
     Basic                                            Other
                       JMS      Filesystem
    Security                                        Bindings
                                                                     J2SE/J2EE
    SOAP     SOAP       JMS

WSDL           WSDL           WSDL
 Servi         Servi          Servi
  ce            ce             ce
  1             2              3
Composite Application
Descriptor
Orchestrat Transformat
    ion        ion                            J2EE
                                                               Other
                                                              Service




                                                                                                                  Logger
  (BPEL)
    WSD
             (XSLT)                           WSD
                                                              Engines




                                                                                   System Management
        L               WSDL                                    WSDL
                                               L




                                                                                                       Deployment
                                                                   JBI Core




                                                                                                       Discovery
                                                                   Services




                                                                                                           &
            Normalized Message Service                             Installation
                                                                   Deployment
                                                                  Management




                                                                                                         Console
                                                                                                          Admin.
                                                                Component Registry
        WSDL           WSDL            WSDL            WSDL
  WS-I Basic
       +                         Filesyste            Other
                       JMS
    Basic                            m               Bindings          J2SE/J2EE
   Security
   SOAP     SOAP        JMS

WSDL           WSDL            WSDL
                                                                                                          SOA Composite
Servi          Servi           Servi
 ce             ce              ce                                                                        App Descriptor
  1              2               3
                                                                                   Application Element                     Artifact
                                                                                   Service Orchestration                   BPEL
                                                                                   Data Transformation                     XSLT
                                                                                   Service 1                               WSDL
                                                                                   Service 2                               WSDL
                                                                                   Service 3                               WSDL
Deploying a Composite
Application
Orchestrat Transformat
    ion        ion                            J2EE
                                                               Other
                                                              Service




                                                                                                                   Logger
  (BPEL)
    WSD
             (XSLT)                           WSD
                                                              Engines




                                                                                    System Management
        L               WSDL                                    WSDL
                                               L




                                                                                                        Deployment
                                                                   JBI Core




                                                                                                        Discovery
                                                                   Services




                                                                                                            &
                                                                   Installation
                                                                   Deployment
                                                                  Management




                                                                                                          Console
                                                                                                           Admin.
                                                                Component Registry
        WSDL           WSDL            WSDL            WSDL
  WS-I Basic
       +                         Filesyste            Other
                       JMS
    Basic                            m               Bindings          J2SE/J2EE
   Security
   SOAP     SOAP        JMS

WSDL           WSDL            WSDL
Servi          Servi           Servi
 ce             ce              ce
  1              2               3
                                                                                   Application Element                      Artifact
                                                                                   Service Orchestration                    BPEL
                                                                                   Data Transformation                      XSLT
                                                                                   Service 1                                WSDL
                                                                                   Service 2                                WSDL
                                                                                   Service 3                                WSDL
Optimizing Service
    Integration
Why XML? And why not?
Advantages and disadvantages
●   Advantages
    –   Ubiquity and momentum
    –   Transparency
         ●   One syntax (unicode with <>)
         ●   Human readable
    –   Enables loosely coupled robust (infoset) systems
●   Disadvantages
    –   Verbose
         ●   Redundancy
         ●   Data as characters
    –   More processing
         ●   Parsing and binding
Why & Who “Binary XML”?
●   Expand range of use of WS
    –   Limited bandwidth
    –   Large docs/images
    –   Fast response
    –   Many requests, ...
●   With the cost-benefits of XML tools!
●   Standarization Is Critical!
    –   W3C Workshop @ Sun
    –   ISO/ITU-T Effort
         ●   Fast Infoset, Fast Schema, Fast WebServices
    –   W3C XML Binary Characterization WG
         ●   Sun is co-editor, 41 participants, 25 organizations
Standards for Interoperability
Joint ITU-T | ISO/IEC standards

                         X.fws
       X.finf                            X.694

       Fast         Fast Web Services    Fast
      Infoset             Fast          Schema
                          SOA
                           P
  Self-describing                       Schema-based
   or structured                        content
      content             SOAP
                        message
                       with content
The Set of Technologies
●   Fast Infoset
    –   For efficient XML Infoset processing
    –   Binary encoding of XML Infosets
    –   Substantial improvements (x3-x4 for JAX-RPC)
●   Fast Schema
    –   For efficient schema-based processing
    –   Binary encoding utilizing schema
    –   Even better improvement than FI (another x2)
●   Fast Web Services
    –   Combines Fast Infoset and Fast Schema
    –   Fast SOAP - Binary encoding of SOAP 1.2
    –   Use of protocol negotiation to adjust encoding
Fast and APIs
●   Fast Infoset
    –   Easy under JAX-RPC 1.x, StAX, SAX, DOM
    –   Easy to use with intermediaries
    –   Available as Open Source at Java.Net
●   FWS
    –   Limited under 172
    –   New APIs being refined
         ●   JAX-RPC 2.0 (JSR-224)
         ●   JAXB 2.0 (JSR-222)
    –   New integrated stack implementation
In a Nutshell
●   There is a need – today – for optimized Service
    Integration
●   Sun leads in Interop Standards
    –   WS-I BP, WSS, Liberty, ebRegistry, WSRP

●   Sun leads Java specifications and specifications
    –   JSR 208, Binary XML (Fast Infoset, etc.)

●   Sun will continue to lead the industry in helping
    developers build and deploy Service Oriented
    Architectures on the Java platform
For More Information
●   JSR 208 EG Page
    –   http://www.jcp.org/en/jsr/detail?id=208

●   WSDL 2.0
    –   http://www.w3.org/TR/wsdl20/
●   Fast Web Services
    –   http://jwsdp.dev.java.net
    –   http://fi.dev.java.net (Open Source)
●   W3C XML Binary Characterization WG
    –   http://www.w3c.org/XML/Binary
●   Oasis BPEL TC
    –   http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=wsbpel


                                                                      23
THANK YOU

Ashutosh.Kulkarni@sun.com