SOAP - Simple Object Access Protocol

Jakob Jenkov
Last update: 2014-05-23

SOAP is short for Simple Object Access Protocol. SOAP is an XML based message format used in the client - service communication popularly called web services. In this trail I will explain the basics of the SOAP format (version 1.2), including:

  • SOAP XML Format
  • SOAP Message Styles
  • SOAP MEP (Message Exchange Patterns)
  • SOAP Message Routing
  • SOAP via HTTP

... plus several other topics, which you can see from the table of contents at the bottom of this page (or top right of every page in trail).

SOAP Message Format

Here is a simple sample SOAP message:

<?xml version="1.0"?>
<soap:Envelope
xmlns:soap="http://www.w3.org/2001/12/soap-envelope" >

<soap:Header>
</soap:Header>

<soap:Body>

  <-- Fault element is optional,
      used only if a fault occurs in web service.
  -->
  <soap:Fault>
  </soap:Fault>

</soap:Body>

</soap:Envelope>

As you can see, a SOAP message consists of a Envelope element, inside which a Header and a Body element can be nested. Inside the Body element a Fault element can be nested, if an error occurs in the web service. Each of these SOAP elements will be explained on the following pages of this SOAP trail.

SOAP Requests and Responses Both Use Envelope's

The SOAP message format as shown earlier is used both to send requests from the client to the web service, and to send responses back to the client from the web service. Thus the SOAP request and response message format is the same. It is not like in HTTP where the request and response formats are different.

Feel Free to Contact Me

If you disagree with anything I write here about SOAP, or just have comments, questions, etc, feel free to send me an email. You wouldn't be the first to do so. You can find my email address on the about page.

Jakob Jenkov

Featured Videos

Java Generics

Java ForkJoinPool

P2P Networks Introduction



















Close TOC
All Tutorial Trails
All Trails
Table of contents (TOC) for this tutorial trail
Trail TOC
Table of contents (TOC) for this tutorial
Page TOC
Previous tutorial in this tutorial trail
Previous
Next tutorial in this tutorial trail
Next