SOAP

XML-based web services and WSDL contracts.

SOAP is taught here in 14 lessons, running from What SOAP is and how the envelope works through to Modernising SOAP: wrapping and migrating to REST or gRPC. Each lesson takes one topic, shows the working code, and links onward to the next, so the course can be read straight through in order.

TrackXML & Web Services
Lessons14
LevelBeginner to intermediate
Reading timeabout 3 hours
PrerequisitesHelpful, but not required: XSLT

Lessons

  1. What SOAP is and how the envelope worksThe XML messaging protocol behind enterprise web services, and the three parts every SOAP message is built from.
  2. WSDL contracts and code generationReading a WSDL top to bottom: types, messages, port types, bindings and services, and how a client is generated from it.
  3. Calling a SOAP service, and why REST usually winsThe raw HTTP request a SOAP call produces, how faults are reported, and an honest comparison with REST today.
  4. SOAP 1.1 versus 1.2 and HTTP bindingsThe two versions differ in namespace, content type and how faults travel over HTTP, and a client that guesses wrong gets an unhelpful error.
  5. XML Schema and data types in messagesThe WSDL types section is an XSD schema, and the mapping between XSD and language types is where precision and nullability are lost.
  6. SOAP faults and error handlingA SOAP fault inside a 500 response is still a structured error message, and mapping it to the right client exception takes a deliberate decision.
  7. Building a SOAP service: contract-first and code-firstGenerating the contract from code is faster to start and harder to govern; writing the WSDL first gives you a reviewable interface.
  8. SOAP headers and the WS-* standardsHeaders carry everything that is not the business payload: correlation, addressing, security and routing, with their own processing rules.
  9. WS-Security: authentication, signing and encryptionMessage-level security protects the payload through intermediaries, which is exactly what TLS cannot do once a gateway terminates the connection.
  10. Attachments and binary data: MTOM and SwABase64 inside the envelope is simple and wasteful. MTOM keeps the XML readable and sends the bytes as raw binary alongside it.
  11. Testing and debugging SOAP servicesGenerate a request from the WSDL, look at the XML that actually went on the wire, and assert on faults in automated tests.
  12. Interoperability between .NET, Java and legacy stacksMost cross-vendor failures come from a handful of known divergences in encoding, dates, nulls and empty collections.
  13. SOAP in the enterprise: ESBs, gateways and middlewareIn large organisations SOAP rarely reaches the service directly. Knowing what the gateway does explains most production-only failures.
  14. Modernising SOAP: wrapping and migrating to REST or gRPCYou rarely get to delete a SOAP contract. A facade lets new consumers use a modern protocol while the old one keeps working.

More in XML & Web Services

XML XPath XSLT RESTful APIs RSS & Atom

FAQ

How long does the SOAP course take?
It has 14 lessons, about 3 hours of reading. Expect roughly twice that if you type out and run every example.
Do I need prior experience for SOAP?
Not strictly. It helps to have read XSLT first, because some lessons build on it, but every lesson explains its own assumptions.
What should I read after SOAP?
Continue with RESTful APIs (14 lessons), the next course in XML & Web Services.