Tango is a key component of the Metro Project. Tango (also known as WSIT) is an implementation of the key enterprise web services, commonly known as WS-services, such as WS-Security, WS-Reliable Messaging, WS-Transactions, and so forth. Tango leverages the existing JAX-WS and EJB programming models and allows you to define Security, Reliability, and Transactional capability for application endpoints by bundling an additional configuration file with your application.
The HTTP Binding Component exposes several Tango features that can be applied to your composite application projects.
Messaging Optimization: Modifies web service messages for optimal processing and bandwidth efficiency. Message Optimization is recommended if your client endpoint will be processing web documents larger than 1KB.
MTOM Message Transmission Optimization Mechanism optimizes web service messages so that they are efficiently transmitted over the internet by encoding the XML code for better processing time and minimal bandwidth requirements.
WS-Addressing: Enables re-routing of requests and responses. WS-Addressing supports normalized web service addresses, enabling multiple transports to be used (other than HTTP).
Reliable Messaging: Ensures that application messages are delivered once only, and optionally in the correct order, to web service endpoints.
WS Reliable Messaging: Defines a standard for identifying, tracking and managing message delivery between two parties reliably, ensuring recovery from failures that may be caused by messages that are lost or received in the wrong order. See for more information see Configuring Reliable Message Delivery.
WS Atomic Transactions: Supports a two phase commit protocol to ensure that either all of the operations invoked within a transaction succeed, or they are all rolled back.
Security:Works in addition to existing transport-level security to provide interoperable message content integrity and confidentiality.
WS Security: Defines a standard set of SOAP extensions used when building secure web services to implement message content integrity and confidentiality. Supports various security token formats, trust domains, signature formats, and encryption technologies.
WS Secure Conversation: Allows a consumer and provider to establish a shared security context for multiple-message-exchanges. The Secure Conversation authentication specification defines a standardized way to authenticate a series of messages, thereby addressing the short comings of web services security. With the WS Security Conversation model, the security context is defined as a new web services security token type, obtained using a binding of Web Services Trust.
WS Trust: Defines extensions to Web Services Security that provide methods for issuing, renewing, and validating security tokens. Supports the management of Trust relationships.
The following example demonstrates how to configure Reliable Message Delivery for a project, and uses the Synchronous BPEL Process sample included with NetBeans.
In the NetBeans IDE, select the Projects tab to display the Projects window.
From the File menu, select New Project.
The New Project dialog box appears.
In the Categories list of the New Project dialog box, select Samples > SOA > Synchronous BPEL Process, and click Next.
Accept the default project name and location, and click Finish.
Your new project appears in the Projects window.
In the NetBeans IDE, expand the SynchronousSampleApplication node in the Projects window. Right-click Service Assembly and select Edit.
The CASA Editor opens in the NetBeans IDE, displaying the Design View of the Synchronous Sample application. The CASA Editor creates and modifies a .casa file, which contains the configuration information for the composite application. For this sample, the CASA Editor created the SynchronousSampleApplication.casa file.
In the CASA Editor, click the Build Project icon to build the composite application.
When the build successfully completes, the Design View displays a WSDL port endpoint, a JBI module, and the connection between the endpoint and the JBI module.
Right-click the SOAP Binding and select Clone WSDL Port to edit... from the popup menu.
The Clone WSDL port to CompApp dialog appears. Click OK to continue. The SOAP Binding icon now contains icons to access the Properties Editor and Server/Client Configuration.
Click the Server/Client Configuration icon on the SOAP Binding, and select Server Configuration.
The WS-Policy Attachment dialog box for the SOAP Binding port appears.
From the WS-Policy Attachment dialog box, click the check box for Reliable Message Delivery to enable reliable messaging, and click the check box for Deliver Messages In Exact Order to enable message order. For even more options click the Advanced button.
Click OK.