34
2006 JavaOne SM Conference | Session 4661 | TS-4661 Composable Web Services Using Interoperable Technologies from Sun's "Project Tango" Nicholas Kassem Technology Director Harold Carr Lead Architect

Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 |

TS-4661

Composable Web Services Using Interoperable Technologies from Sun's "Project Tango"

Nicholas Kassem

Technology Director

Harold Carr

Lead Architect

Page 2: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 2

Learn about Sun’s “Project Tango” & see how it will enable the next generation of Web Services.

Goal of this Session

Page 3: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 3

Agenda

What is “Project Tango” What should developers know What are the key deliverables Programming modelRoadmapCall to ActionResources

Page 4: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 4

Agenda

What is “Project Tango” What should developers know What are the key deliverables Programming modelRoadmapCall to ActionResources

Page 5: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 5

Project Tango ... background

● Goal ● Deliver next generation Web Services technologies enabling

first class interoperability between Sun's Java Products and Windows Operating environments supporting WCF[1]

● Implementation strategy● Build on JAX-WS & JAXB technologies● Work closely with Microsoft and perform product level testing● Build an active Open Source community centered around the

GlassFish community

[1] Windows Communications Foundation aka “Indigo”

Page 6: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 6

Project Tango Features

● Bootstrapping Communication● Optimizing Communication● Enabling Reliability● Enabling Atomic Transactions● Securing Communication

Page 7: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 7

Bootstrapping Communication

WCF svcutilor JAX-WS wsimport

WCF or WSIT-based Service

Creates

Client Proxy

WS-Transfer/ MEX

WSDL

Page 8: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 8

Optimizing Communication● Wire format optimization (MTOM/XOP)

● Transmit binary data as MIME attachments● Transparent to the application

● Security optimization (WS-SecureConversation)● Establish shared context on multi-message

exchange● Use context to generate derived keys on

subsequent msgs● Increases security and performance

Page 9: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 9

Enabling Reliable Messaging

● WS-ReliableMessaging● Recovery from messages lost or misordered in

transit● Transparent to application

Enabling Atomic Transactions● WS-Coordination & WS-AtomicTransactions● All operations in TX boundary succeed or rollback● New to Web Services

Page 10: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 10

Securing Communication

● WS-Security● Web Services previously only point-to-point via SSL● Now end-to-end by encrypting/signing message

before transport● WS-Trust

● Establish and broker trust relationships● Issuing, renewing, validating security tokens used

by WS-Security

Page 11: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 11

Layered view

JAX-WS Tooling, NetBeans and Studio Support

SecuritySecure Conv.

TrustXWSS

ReliabilityReliable-

Messaging

TransactionsAtomic-

TransactionsCoordination

MetadataWSDLMEXPolicy

SOAP Based Messaging (WSA, MTOM)

JAXB Based XML Data Binding (XSD, XPATH)

HTTP TCP SMTP

Page 12: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 12

Agenda

What is “Project Tango” What should developers know What are the key deliverables Programming modelRoadmapCall to ActionResources

Page 13: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 13

Core WS* concepts● Service opacity

● Information hiding● Configurable stack● Wire-protocol centric

● Minimal assumptions about end nodes● Service isolation

● Independent Service design, development, deployment, & versioning

● Message oriented● Long lived messages● Transient MEPs

Page 14: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 14

Levels of Interoperability● Transport Bindings

● HTTP, SMTP, TCP & others● Data bindings

● XSD based Type mappings (early and late binding)● Common encoding schemes

● Common Infosets● Language agnostic wire protocols● Common policy vocabularies● Security & Trust models● Common application semantics

Page 15: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 15

Homogenous Service Integration

Managed Environment

Trust Authority Service Provider

Service Provider

ServiceConsumer

Unmanaged Environment

Page 16: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 16

Heterogeneous Service Composition

Unmanaged Environment

ServiceProvider

TrustAuthority

ServiceProvider

TrustAuthority

ServiceProvider

Managed Environment

ServiceConsumer

Page 17: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 17

Agenda

What is “Project Tango” What should developers know What are the key deliverables Programming modelRoadmapCall to ActionResources

Page 18: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 18

Relevant Specifications● Messaging

● WS-Addressing, MTOM● Metadata

● WS-MetadataExchange, WS-Policy, WSDL● Security

● WS-SecurityPolicy, WS-SecureConversation, WS-Trust, WS-Security

● Reliability● WS-ReliableMessaging

● Transactions● WS-Coordination, WS-AtomicTransaction

Page 19: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 19

Web Services Interop. Tech. (WSIT)

● Phase I:● Priority is early delivery of implementations of a select

set of WS* specification● WSA, MEX, Trust, Secure Conversation, RM, Policy

● Community development and technical evangelism● Visible Development in GlassFish Community

● Phase II:● Deliver additional enterprise class WS* technologies

● Transaction, Coordination● Produce & Analyze performance benchmarks● Align with Java Platforms & Sun Tools

Page 20: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 20

Project Tango Deliverables on Java.net

WSIT* 1.0 EA (JavaOne-06)● Basic Messaging

● JAX-WS 2.0.1 EA● JAXB 2.0.1 EA● WS-ReliableMessaging● WS-Addressing

● Tooling ● NetBeans plugin

● Meta Data● WS-MetaData Exchange● WS-SecurityPolicy● WS-Policy

● Security● WS-SecureConversation● WS-Trust● WS-Security

WSIT 1.x EA (post JavaOne-06)

● WS-AtomicTransaction● WS-Coordination

* Web Services Interoperability Techchnology

Page 21: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 21

Agenda

What is “Project Tango” What should developers know What are the key deliverables Programming modelRoadmapCall to ActionResources

Page 22: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 22

WSIT Programming Model

● No runtime APIs for Tango● Developer writes consumers/providers via

JAX-WS and EJB APIs● Developer/deployer supplies config file to

enable/control Tango components● Config file written by hand or produced by

Tango NetBeans module

Page 23: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 23

Summary of WSIT programming model

WSIT NetBean Module

By Hand

Other IDEs

WSIT Config Filewsit-*.xml

109 DeploymentMETA-INF/wsit-*.xml

Servlet DeploymentWEB-INF/wsit-*.xml

Service

Wsimport

ClientArtifacts

WSIT Config Filewsit-*.xml

WSIT NetBean Module

By Hand

Other IDEs

MEX/ GET

WDSLMEX/GET

Page 24: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 24

Page 25: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 25

Implications for Java Developers

● Sun has worked hard to minimize impact (if any) on existing API's e.g. JAX-WS & JAX-B

● Enterprise developers (JavaEE) will see no changes in their programming model

● Interoperability with WCF should be achievable with minimal pain

● Performance issues are being looked at very closely and the relationship between Fast Infoset, TCP-bindings & Project Tango is getting particular attention

Page 26: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 26

Agenda

What is “Project Tango” What should developers know What are the key deliverables Programming modelRoadmapCall to ActionResources

Page 27: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 27

Technology & Product Delivery plans

Visible development

WSIT Early Access

NetBeans 5.5 Plugin Early Access

GlassFish

Now 2007

FCS Quality

NetBeans Plugin

Sun Java System App. Server 9.1

JavaES 6.0

Page 28: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 28

Agenda

What is “Project Tango” What should developers know What are the key deliverables Programming modelRoadmapCall to ActionResources

Page 29: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 29

Call To Action● Test Drive Web Services Interoperability

● java.sun.com/webservices/interop● WSIT (whiz-it): Download! Contribute!

● wsit.dev.java.net● Get the FREE GlassFish Open Source App

Server● java.sun.com/javaee/glassfish

● Download NetBeans Module● websvc.netbeans.org/wsit

● Visit 'The Aquarium' – Virtual watercooler for WSIT and GlassFish

● Blogs.sun.com/theaquarium

Page 30: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 30

Agenda

What is “Project Tango” What should developers know What are the key deliverables Programming modelRoadmapCall to ActionResources

Page 31: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 31

For More Information

Don't miss● TS-3473● TS-1603● BOF-2477● BOF-2953● Hands-on Lab● Q&A @ Argent Hotel

Page 32: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 32

Project GlassFish

Building a Java EE 5 open source application

server

Simplifying Java application development with Java EE 5 technologies

Includes JWSDP, EJB 3.0, JSF 1.2, JAX-WS and JAX-B 2.0Supports > 20 frameworks and appsOpen source CDDL license

Basis for the Sun Java System Application Server PE 9

Free to download and free to deployOver 1200 members and 200,000 downloadsIntegrated with NetBeans

Page 33: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 33

Summary

● WSIT is the work product of Project Tango● Initial focus is WCF interop

● As specs mature focus will broaden● Java.net and visible development Key to Project

Tango's strategy to engage developers

Page 34: Composable Web Services Using Interoperable Technologies ...haroldcarr.net/computerScience/presentations/2006... · Project Tango ... background Goal Deliver next generation Web Services

2006 JavaOneSM Conference | Session 4661 | 34

Q&ANicholas KassemHarold Carr