.NET Web Services: Architecture and Implementation

Foreword. Preface. Acknowledgments. 1. Introducing Web Services. The Problem: Sharing Data. The Solution: Distributed Application Development. The Web Architecture. Defining Web Services. The Significance of Internet Standards. The Significance of WSDL. The Significance of Interoperability. The Significance of Loose Coupling. Modular Design. Message Passing. Error Handling. The Web Service Architecture. The Baseline Specifications of Web Service Architecture. Summary. 2. XMLWeb Services Standards. The Basics. HTTP. XML and XML Schema. Standards for XMLWeb Services. The Protocol: SOAP. Describing Services with WSDL. Discovering Services with UDDI. Other Protocols. Summary. 3. Creating Web Services with ASP.NET. Roadmap to ASP.NET Web Services. Building Servers. Anatomy of a Web Service. Building Document-Literal Services. Building Document-Encoded Services. Building RPC-Encoded Services. Building One-Way Services. Controlling Routing. Using SOAP Bindings. Implementing a Server Asynchronously. Using SOAP Headers. Returning Errors. Summary. 4. Creating Web Service Clients. Creating Clients with the . NET Framework SDK. Discovery with disco.exe. WSDL Consumption. Creating Clients with Visual Studio . NET. Creating Web Service Clients Manually. Building Document-Literal Clients. Building Document-Encoded Clients. Building RPC-Encoded Clients. Building One-Way Clients. Building a Client That Includes Asynchronous Methods. Handling Errors and SOAP Faults. Extending and Customizing a Client. Summary. 5. XML Serialization with . NET. Overview. Only Classes with a Public, Default Constructor Will Be Serialized. Only Public Fields and Properties Will Be Serialized. Read-Only Fields and Properties Will Not Be Serialized. Methods and Other Type Information Will Not Be Serialized. Writing and Reading XML. Serializing Encoded XML. Customizing XML Serialization. The Namespace of Serialized XMLWill Be http://tempuri.org by Default. Properties and Fields Will Remain in the Same Namespace. Properties and Fields Will Be Serialized as Elements. Arrays with XML Serialization. Serializing Untyped XML. Creating Classes from Schemas. XML Serialization and Web Services. Summary. 6. Extending Web Services. Soap Extensions. Description Formatters. Customizing Transport Information. Setting Exposed HTTP Properties. Overriding Proxy Class Behavior. HTTP Modules. The Web Services Enhancements for Microsoft . NET. Summary. 7. Transport Protocols for Web Services. TCP Communication. Unreliable Messages with UDP. SOAP in E-mail: SMTP. The Web's Transport: HTTP. The WebClient Class. The WebRequest Classes. Summary. 8. Data and Format: XML and XML Schemas. The Meta-Language. XML Documents and Namespaces. Programming with XML and Namespaces. Streaming XML Processing. DOM-Based Programming. Describing XML with Schemas. Data Types with XML Schema. Describing the XML Shape. Programming with Schemas. Programming Schema-Based XML. Manipulating XML Schema Documents. Summary. 9. The Messaging Protocol: SOAP. Overview of the SOAP Protocol. Enveloping with SOAP. Errors with SOAP. Remote Method Calls with SOAP. SOAP and HTTP. Using SOAP to Send Messages. SOAP Headers and Asynchronous Messaging Summary. 10. Describing Web Services. Requirements for Describing Web Services. The Web Services Description Language. Extensibility. Abstraction. Structure. Anatomy of WSDL. Abstract Message Operations. Concrete Operation Information. Types. Messages. Port Types and Operations. Bindings. Services and Ports. Writing WSDL. Reading WSDL Documents with . NET. Extending WSDL. Web Service Policy. Summary. 11. Discovering Web Services. Universal Discovery with UDDI. The Anatomy of UDDI. Programmer's API. WSDL and UDDI. WS-Inspection. Anatomy of WS-Inspection. Ad-Hoc Discovery. Summary. 12. Messaging with Web Services: WS-Routing, WS-Referral, and DIME. Logical Names. Routing Messages. Message Paths with WS-Routing. Building WS-Routing Applications. Dynamic Configuration of SOAP Routers. DIME. Anatomy of a DIME Message. Using DIME with SOAP. Summary. 13. Securing Web Services with WS-Security. Security Technologies and Standards. Authentication. Confidentiality. Integrity. Web Service Security Protocols. Definitions. WS-Security. Summary. 14. Advanced Messaging: Reliability and Sessions. Sessions. HTTP Sessions. Message-Level Sessions. Message Reliability. Dialogues and Monologues. Summary. 15. Designing Web Services. Performance. Writing Performance-Oriented Code with . NET. Message Size and Network Latency. How Important Is Performance? Interoperability. Audience-Centered Design. Specific SOAP Issues. Versioning. Types of Versioning. Loosely Coupled Architecture and Implementation Versioning. Namespaces and Versioning. Using Business Logic. Caching. Summary. Final Thoughts. Index. 0321113594T01272003