#

# Recommended Reading

## Specifications

1. SOAP Version 1.1
   Remember that SOAP1.1 is not an official W3C standard.
2. SOAP Version 1.2 Part 0: Primer
   This and the follow-on sections cover what the W3C think SOAP is and how it should be used.
3. Web Services Description Language (WSDL) 1.1
4. RFC 2616: Hypertext Transfer Protocol -- HTTP/1.1
5. JAX-RPC Specification 1.0
   The public API for Web Services in Java.
6. XML Schema Part 0: Primer
   The W3C XML Schema, (WXS) is one of the two sets of datatype SOAP supports, the other being the SOAP Section 5 datatypes that predate WXS. Complicated as it is, it is useful to have a vague understanding of this specification.

## Explanations, articles and presentations

1. A Gentle Introduction to SOAP Sam Ruby tries not to scare people.
2. A Busy Developer's Guide to WSDL 1.1
   Quick intro to WSDL by the eponymous Sam Ruby.
3. Axis - an open source web service toolkit for Java
   by Mark Volkmann, Partner, Object Computing, Inc. A very good introduction to SOAP and Axis. Highly Recommended.
4. Java development with Ant
   by Hatcher and Loughran. A book on Ant development which covers Web Service development with Axis, along with other topics relevant to Java developers using Ant. The Web Service chapter, chapter 15, is free to download.
5. When Web Services Go Bad
   Steve Loughran tries to scare people. A painful demonstration how deployment and system management are trouble spots in a production service, followed by an espousal of a deployment-centric development process.
6. JavaOne 2002,Web Services Today and Tomorrow
   (Java Developer connection login required)
7. The Java Web Services Tutorial: Java API for XML-based RPC
   This is part of Sun's guide to their Java Web Services Developer Pack. The examples are all based on their JWSDP, but as Axis also implements JAX-RPC, they may all port to Axis.
8. Using Web Services Effectively.
   Blissfully ignoring issues such as versioning, robustness and security and all the other details a production Web Service needs, instead pushing EJB as the only way to process requests, this is Sun's guide to using web services in Java. It also assumes Java is at both ends, so manages to skirt round the interop problem.
9. Web Services with JAX-RPC and Apache Axis.
   by Pankaj Kumar. Starting with a 10000 ft. view of Web Services, prior technologies, current and emerging standards, it quickly gets into the nitty-gritties of using JAX-RPC and Apache Axis for writing and executing programs. Has a nice coverage of different invocation styles -- generated stubs, dynamic proxy and dynamic invocation interface. A good place to start if you are new to Web Services and Axis.
   The author also maintains a Web Services Resource Page.

## Interoperability

1. To infinity and beyond - the quest for SOAP interoperability
   Sam Ruby explains why Interop matters so much.
2. The Wondrous Curse of Interoperability
   Steve Loughran on interop challenges (especially between .NET and Axis), and how to test for them.

## Advanced topics

1. Requirements for and Evaluation of RMI Protocols for Scientific Computing
2. Architectural Styles and the Design of Network-based Software Architectures
3. Investigating the Limits of SOAP Performance for Scientific Computing
4. Architectural Principles of the World Wide Web