Skip to main content

An Overview of Sun's Project Tango

Posted by haroldcarr on February 9, 2006 at 1:46 PM PST



Java Web Services

(JWS) engineers are working with


Windows Communication Foundation

(WCF) engineers to ensure interoperability of enterprise features.
such as security, reliable messaging and atomic transactions. At Sun,
we call this work "Project Tango" and like to think of Duke doing the
dance. This is accomplished by implementing a number of WS-*
specifications and holding plugfests where our engineers work together
for a week to test our implementations of those specifications. This
entry maps the enterprise features to particular specifications and
talks about interoperability testing. Source and binaries will be available in the upcoming weeks.

The enterprise features fall into four main categories: messaging,
metadata, security and quality-of-service (QoS), as shown in the
following figure:


Starting with the core


support built into the Java
platform, we use or extend existing features and add new support for:

  • Messaging
  • Metadata
    • WSDL: Support for the Web Services Description Language is
      built into
    • WS-Policy: Policies express and handle requirements and
      capabilities of web service consumers and providers.
    • WS-MetadataExchange: "WS-MEX" is a protocol to enable a
      consumer to obtain a service's metadata (i.e., its WSDL and policies).
      Think of it as a bootstrap mechanism for communication.
  • Security
    • WS-SecurityPolicy: Defines specific policies (i.e., assertions)
      that describe how messages are secured.
    • WS-Security: Provides message content integrity and
      confidentiality (even in the presence of intermediaries).
    • WS-Trust: Provides methods for issuing, renewing,
      and validating security tokens used by WS-Security.
      It also provides ways to establish and broker trust relationships
    • WS-SecureConversation: Can be viewed as a security
      optimization (i.e., better message level security and efficiency
      in multiple-message exchanges).
  • QoS
    • WS-ReliableMessaging: Enables a messaging system to recover
      from failures caused by messages that are lost or
      misordered in transit.
    • WS-Coord: A framework for providing protocols that coordinate
      the actions of distributed applications.
      Used by WS-AtomicTransactions.
    • WS-AtomicTransactions: Supports two phase commit semantics
      such that either all operations invoked within an atomic transaction
      succeed or are all rolled back.

From a functional point-of-view the main features enabled by the
above specifications are:

  • bootstrapping communication
  • securing communication
  • optimizing communication
  • enabling reliability
  • enabling atomic transactions

future entries I will provide more detail on these specifications and
I will show how the specifications play together (i.e., compose) to
provide enterprise features.

Interoperability Testing

Last November 2005 Sun and Microsoft engineers worked in the same
room for a number of days testing the interoperability of our
implementations. We will do this again next month, March 2006, at
another "plugfest."

Arun's blog

is a good place to go to keep


on our plugfest progress and results.

Availability of JWS/WCF Interoperability Software

We plan to make Sun's interoperability software available in time
for this year's

Java One.

Binaries will be available in the

Java Web Services Developer Pack

and source code will be available as part of the

Glassfish community.


Related Topics >>