• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

REST vs SOAP Popularity?

 
Bartender
Posts: 1971
17
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I'm wondering if anyone could tell me if SOAP is more popular than REST or vice versa.

I know it "depends", but in many cases you could use either one.

Just curious.

Thanks in advance,

-mike
 
Ranch Hand
Posts: 145
8
Mac MySQL Database Java Ubuntu
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
The company I work for develops an NFC mobile payment solution and we do a lot of web services integration with third parties, mostly with mobile carriers.

From my experience in past integration projects I've participated in, SOAP is used most of the time, I only done 2 REST based integrations and a dozen of SOAP-based integrations.
 
Mike London
Bartender
Posts: 1971
17
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Mike Degteariov wrote:The company I work for develops an NFC mobile payment solution and we do a lot of web services integration with third parties, mostly with mobile carriers.

From my experience in past integration projects I've participated in, SOAP is used most of the time, I only done 2 REST based integrations and a dozen of SOAP-based integrations.



Interesting, thanks.

Considering how simple it is to create a JAX-WS service, it's my favorite way over the REST "Easy" approach.

-mike
 
Mike Degteariov
Ranch Hand
Posts: 145
8
Mac MySQL Database Java Ubuntu
  • Likes 3
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
REST and SOAP-based services are best tailored for different things, you know.

REST are generally easier to implement (although me personally have had so much more experience with SOAP that for me SOAP is easier), also REST is better for simple(ish) read-only operations like returning list of orders for the customers or list of the customers for the agent.

On the contrary,
SOAP is arguably your only option when you need either

1. message-level security (when you need to sign and/or encrypt parts of the message), or
2. you need a transactions support, or
3. you need a one-way asynchronous calls, or
4. you need to implement a service using a 3rd party WSDLs (in a same way like you implement a 3rd party interface with your own class)

For mission-critical inter-enterprise integrations, these 1-4 bullets are often essential, and so SOAP is still a way to go.
 
Mike London
Bartender
Posts: 1971
17
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Interesting info, thanks.

- mike
 
Sheriff
Posts: 67747
173
Mac Mac OS X IntelliJ IDE jQuery TypeScript Java iOS
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
In my own experience, I have created exactly zero SOAP APIs, but dozens of RESTful ones. So, yes, it depends.

Most modern JavaScript frameworks (such as Backbone) assume REST.
 
Rancher
Posts: 43081
77
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
SOAP used to rule supreme, but these days REST is the first choice for ease of use. But SOAP still has advantages like WS-Security, which REST can't really match.
 
Mike London
Bartender
Posts: 1971
17
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Ulf Dittmer wrote:SOAP used to rule supreme, but these days REST is the first choice for ease of use. But SOAP still has advantages like WS-Security, which REST can't really match.



Ease if use, perhaps, but with RESTEasy and Jersey, the actual development, especially having to configure maven projects, seems much more tedious.

I can create a SOAP WS in an hour, but RESTEasy, not so much.

Appreciate your reply.

-mike
 
Ulf Dittmer
Rancher
Posts: 43081
77
  • Likes 1
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
You can use both JAX-WS and JAX-RS with
Maven or without Maven. I don't see how that would be a differentiating factor.
 
Bear Bibeault
Sheriff
Posts: 67747
173
Mac Mac OS X IntelliJ IDE jQuery TypeScript Java iOS
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Indeed; if the tools you are using aren't working for you, choose others. (I personally avoid maven like the plague.)
 
Mike London
Bartender
Posts: 1971
17
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Bear Bibeault wrote:Indeed; if the tools you are using aren't working for you, choose others. (I personally avoid maven like the plague.)



Bear! Words of wisdom as usual. Totally agree.

Yet, I've been in so many Enterprise environments where they try to justify the extra (endless, sometimes) hours for configuring maven (src/main/java), etc. by the life cycle methods and standardization it brings to the table. I suppose only Enterprise type environments can afford a lot of Java development as it's hardly a RAD platform.

Even the O'Reiley JAX-RS 2.0 book uses Maven for all its examples. I suppose I could just add the libs to the "libs" folder in Intellij and just build the WAR artifact that way. In fact, I did just that to add the Client code to the project so I could test it.

So, do you use Jersey or RESTEasy? Which IDE?

Just curious what your workflow is if you create lots of services.

Appreciate your great replies as always.

Thanks,

-mike
 
Mike London
Bartender
Posts: 1971
17
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Ulf Dittmer wrote:You can use both JAX-WS and JAX-RS with
Maven or without Maven. I don't see how that would be a differentiating factor.



Just that most examples seem to use Maven and so do most books. So, if you don't use JAX-RS all the time, and you're using a book to get up to speed on this or that, not using Maven just adds another layer to an already somewhat difficult development exercise.

thanks,

-mike
 
Author and all-around good cowpoke
Posts: 13078
6
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Since REST is an architectural style, NOT an API, you don't need anything but the stardard HTTP library to create a RESTful server.

Some folks just can't resist building toolkits like Jersey and RESTeasy but they are not necessary. Just respect the style.

Bill
 
Ulf Dittmer
Rancher
Posts: 43081
77
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

So, if you don't use JAX-RS all the time, and you're using a book to get up to speed on this or that, not using Maven just adds another layer to an already somewhat difficult development exercise.


But that's the same with JAX-WS, no? If you use Maven, then for both APIs you need to create the POM once, and then it's copy/paste. If you don't use Maven, then you need to hunt down the jar files once (or set up Ivy for Ant once), and then it's copy/paste. So I really don't see how the choice of build tool makes a difference. There are other, much more important, differences between SOAP and REST upon which to base a decision than a one-time setup task.
 
Bear Bibeault
Sheriff
Posts: 67747
173
Mac Mac OS X IntelliJ IDE jQuery TypeScript Java iOS
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I use a lightweight framework I created that's layered on the Play Framework v1.

(No don't ask -- I can't share the framework because of client agreements.)
 
Mike London
Bartender
Posts: 1971
17
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Ulf Dittmer wrote:

So, if you don't use JAX-RS all the time, and you're using a book to get up to speed on this or that, not using Maven just adds another layer to an already somewhat difficult development exercise.


But that's the same with JAX-WS, no? If you use Maven, then for both APIs you need to create the POM once, and then it's copy/paste. If you don't use Maven, then you need to hunt down the jar files once (or set up Ivy for Ant once), and then it's copy/paste. So I really don't see how the choice of build tool makes a difference. There are other, much more important, differences between SOAP and REST upon which to base a decision than a one-time setup task.



I see your points.

I really didn't know people copied and pasted POM files, but I guess that is a solution. I suppose you could also create a custom Maven archetype as well.

Thanks for your reply.

-mike
 
Ranch Hand
Posts: 76
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
You don't need to know which one is more popular SOAP or REST, obviously whoever comes first will get more hits than later one, rather try to understand where SOAP or REST fits into the application.
 
Mike London
Bartender
Posts: 1971
17
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Anindya Roy wrote:You don't need to know which one is more popular SOAP or REST, obviously whoever comes first will get more hits than later one, rather try to understand where SOAP or REST fits into the application.



Yes, obviously. How each might fit was not the basis of my question.

I was just wondering, that's all.

- mike
 
Ranch Hand
Posts: 1871
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi

We have used both REST and SOAP but for different interfaces.

Obviously we use REST towards the WEB endpoint and SOAP towards EAI integrations.

Within the enterprise if possible Messaging is the preferred style.

Rahul M
reply
    Bookmark Topic Watch Topic
  • New Topic