February 02, 2005

Joel's Cup o' Java: REST is fun, but I still prefer SOAP

I think some practical integration experience may be needed here...

Joel's Cup o' Java: REST is fun, but I still prefer SOAP

Let's see what we have here


  1. I can use existing web service toolkits and APIs. Once the interface is defined, I can switch from Axis to JAX-RPC to SAAJ, with my client none the wiser.
  2. The client programmers can also choose from various existing technologies. These guys are usually friends of mine, so I enjoy making their life easier.
  3. I can take advantage of future SOAP-related advances and technologies. If my company purchases a blazing fast web services stack, I most certainly want to use it.
  4. I think that RPC will continue to be the basic building block of SOA. After all, it has been for OO.


In short, I embrace SOAP, or any standard, because it gives me lots of options, both present and future. And I like having options.


I can use existing web service toolkits and APIs. The same holds true for a direct HTTP approach.

Once the interface is defined, ... Ah, yes, the old "I'm in control of the interface" ploy...

The client programmers can also choose from various existing technologies. The same holds true for a direct HTTP approach.

These guys are usually friends of mine, so I enjoy making their life easier. With an HTTP approach, 'these guys' are usually a swarming legion, so I enjoy making more lives easier.

I can take advantage of future SOAP-related advances and technologies. Hmmm, same holds true for a direct HTTP approach. Although using advances that have already occurred is my preference.

I think that RPC will continue to be the basic building block of SOA. After all, it has been for OO. You may want to consider that OO is not planetary scale. And neither is open-ended RPC.

I embrace SOAP, or any standard, because it gives me lots of options ... SOAP is flexible. Like a rope. Just be careful not to hang yourself.


No comments: