XML Web services are the next logical step in the evolution of the Internet. Teach yourself how to write and deploy XML Web services for Microsoft® .NET—one step at a time—with this modular, accessible tutorial. It delivers expert, task-based instruction plus a real-world XML service example to help you apply what you already know about Microsoft Visual C#™, Microsoft Visual Basic® .NET, and object-oriented programming so that you can learn XML Web services development at your own pace. Topics covered include:
UNDERSTANDING XML WEB SERVICES
XML Web services architecture
XML Web services protocols
Web Service Description Language (WSDL)
Discovering XML Web services
BUILDING XML WEB SERVICES
Writing .NET XML Web services
Testing XML Web services
Debugging XML Web services
CONSUMING XML WEB SERVICES
Discovering XML Web services
Generating a proxy class
Creating clients that consume XML Web services
Consuming XML Web services asynchronously
Consuming XML Web services with HTTP
ADVANCED XML WEB SERVICES
Managing XML Web service state
Securing XML Web services
Using data sets with XML Web services
Using SOAP headers
Understanding XML Web Services
Chapter 1 Introduction to XML Web Services
What Are XML Web Services?
XML Web Service Examples
The Benefits of XML Web Services
Challenges Facing XML Web Services
XML Web Services Standards and Protocols
XML Web Service Architecture
Creating XML Web Services with ASP.NET
Chapter 2 Developing XML Web Services Using Visual Studio .NET
Preparing the Development Environment
ASP.NET Fundamentals for XML Web Services
Creating XML Web Service Projects in Visual Studio .NET
Chapter 2 Quick Reference
Chapter 3 Building the Credit Card Validation Service
The Credit Card Validation Service
The VISAValidator Service
Understanding the VISAValidator Code
Chapter 3 Quick Reference
XML Web Services and Clients
Chapter 4 Building a SOAP Client
Proxy Classes and Web References
XML Web Service Clients
Chapter 4 Quick Reference
Chapter 5 Building an HTTP Client
HTTP-GET and HTTP-POST Protocols
Consuming XML Web Services Using HTTP
Chapter 5 Quick Reference
Chapter 6 Data Types in XML Web Services
Representing Data Using SOAP
Representing Data Using HTTP
Simple Types
Complex Types
Reference Arguments
Chapter 6 Quick Reference
Chapter 7 Exception Handling
How ASP.NET Handles Exceptions
Using Custom Fault Codes
Chapter 7 Quick Reference
Chapter 8 Debugging XML Web Services with Visual Studio .NET
Breakpoints and Exceptions
Using Breakpoints
Configuring Breakpoints
Breaking on Exceptions
Chapter 8 Quick Reference
Chapter 9 Publishing and Discovering XML Web Services
Publishing and Discovering XML Web Services Using UDDI
Publishing and Discovering XML Web Services Using DISCO files
XML Web Service Deployment
Chapter 9 Quick Reference
Advanced XML Web Services
Chapter 10 State Management
Client State
Application State
Chapter 10 Quick Reference
Chapter 11 The DataSet and XML Web Services
Overview of the DataSet
Using a DataSet
Chapter 11 Quick Reference
Chapter 12 Caching and Application Events
Caching
The Global.asax file
Chapter 12 Quick Reference
Chapter 13 Securing XML Web Services
Authentication
Implementing Integrated Windows Authentication
Authorization
Chapter 14 Custom SOAP Headers
Using Custom SOAP Headers in XML Web Services
Chapter 14 Quick Reference
Chapter 15 Consuming XML Web Services Asynchronously
Asynchronous XML Web Services
Asynchronous XML Web Service Clients
Chapter 15 Quick Reference
Chapter 16 Manually Creating Proxies
Using the Wsdl.exe Tool
Chapter 16 Quick Reference
Appendixes
Appendix A The Credit Card Validation Library
CreditCardValidation.dll
How Card Numbers Are Validated
The CreditCardValidation Code
Summary
Appendix B XML Web Service Resources
Extensible Markup Language (XML)
Hypertext Transfer Protocol (HTTP)
Microsoft .NET
Microsoft .NET Passport
Secure Sockets Layer (SSL)
Simple Object Access Protocol (SOAP)
Transport Layer Security (TLS)
Universal Description, Discovery, and Integration (UDDI)
As experienced Java developers, Adam Freeman and Allen Jones have followed the progress of C# and .NET with interest from their earliest stages. When the first versions of the language and platform were released, Adam and Allen began learning how to program effectively with C# and how to drive the .NET environment. They are both 12-year veterans of the technology treadmill. Having reinvented themselves numerous times during their careers, Adam and Allen have always stayed toward the leading edge of the technology curve. It is this desire to stay ahead that drove them to seek a deep understanding of first Java and now C#. They have worked together for the last three years, having first met while working as consultants for Marimba, one of the most Java-centric companies ever formed. Most recently they have collaborated on the design and development of a custom J2EE implementation to provide specialized e-commerce infrastructure for the physical oil industry. It is their proven ability to learn, understand, and apply new technologies and concepts and their experience communicating complex ideas to others that make Adam Freeman and Allen Jones the perfect authors for this project.
Adam Freeman has been developing in Java since before its general availability and has contributed to successful Java books and course materials, including Addison Wesley’s Programming the Internet with Java. He has developed many of the largest, most complex, and most innovative Java projects in the world. His recent experience architecting a proprietary J2EE implementation for an e-commerce platform has given him an in-depth understanding of the current technologies and challenges facing those developing large-scale distributed e-commerce systems. Adam has previously worked for Netscape, Sun Microsystems, and the NASDAQ stock exchange.
Allen Jones has spent his career working for large corporate and financial institutions, successfully developing and implementing solutions based on the Microsoft enterprise product range. Allen has been developing Microsoft Windows® solutions since 1990 and working with Windows NT® and Win32® since 1993. He was one of the first MCSEs to qualify anywhere in the world. Allen started programming in Java three years ago and has since been developing e-commerce and security systems. He is a former employee of Microsoft in both Australia and the United Kingdom.