Although we touched on XML Web services briefly in Chapter 3, "Exchanging Data Between .NET and Java," given the amount of media coverage Web services get, you might be surprised to have reached this point in the book without seeing more coverage of interoperability using Web services. The earlier chapters didn't cover Web services more extensively because I wanted to give you as much detail about the foundation of interoperability before covering the technology.
This chapter and Chapter 6, "Connectivity with XML Web Services, Part 2," will cover some of the basics of using Web services for both the Microsoft .NET and Java platforms. Both chapters will use the last set of samples presented in Chapter 4, "Connectivity with .NET Remoting," and will cover the samples' implications for interoperability where appropriate. These chapters aren't intended to be a full-fledged guide to implementing the Web services technology. Rather than covering each and every part of the specification, the samples presented will give you enough information so that you can run them and learn how to achieve interoperability.
The topic of Web services spans a broad range of subjects. As a result, we'll cover Web services in two parts . Part 1 (this chapter) will introduce the concepts of Web services, cover a little history, explain the landscape of both .NET and Java, and present a set of simple examples to show connectivity between the two platforms. Part 2 (Chapter 6) will expand upon these samples, showing how they can be extended and covering some areas that can impact interoperability in production environments.