Toward the end of Chapter 8, "Asynchronous Interoperability, Part 1: Introduction and MSMQ," we introduced the new XML Web service specifications, formerly known as GXA (Global XML Web Services Architecture) and now more frequently referred to as WSA (Web Services Architecture). These specifications, which typically are prefixed with WS-, are designed to take Web services beyond just connecting endpoints together and instead detail how true application interoperability can be achieved.
In the next three chapters, we'll look at three of these new specifications, WS-Security, WS-Attachments (DIME), and WS-Routing. With each of these, we'll introduce the problem the specification is trying to solve and look at sample code that shows these specifications working between .NET and J2EE. To enable this functionality, we'll use Microsoft Web Services Enhancements (WSE) 1.0 and GLUE version 4.0.1.
In this chapter, we'll take the first of these specifications, WS-Security, present an overview of the specification, and then show sample code that uses WS-Security to create both authenticated and encrypted Web service requests between .NET and Java. Each sample will show both .NET and Java as a client and as a Web service.