aspose file tools*
The moose likes Web Services and the fly likes webservices vs existing technologies Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Java 8 in Action this week in the Java 8 forum!
JavaRanch » Java Forums » Java » Web Services
Bookmark "webservices vs existing technologies" Watch "webservices vs existing technologies" New topic
Author

webservices vs existing technologies

vidya mahavadi
Ranch Hand

Joined: Nov 24, 2004
Posts: 34
Hi guys,

I am new bie in webservices world and I have basic question. We have many services running in the company now, most of them using java-rmi and corba. Is it ok to use webservice when you know that only java clients will be using it? My understanding is that the complexity of webservices is justified only if it is inteded for cross platform communication. If it to be used for java clients only, we could probably use other distributed technologies in java like JMS, RMI, EJB etc.. What value can we add by switching to a new technology?

I know my question might sound a bit mundane, but I am in a confused state on the learning curve and I would appriciate if someone can explain me.

Thanks and regards,
V
David O'Meara
Rancher

Joined: Mar 06, 2001
Posts: 13459

Is it ok to use webservice when you know that only java clients will be using it?
Hopefully rewriting your question will give you a different perspective:

Are you prepared to write your Java system so that all other technologies are locked out from integrating with it?
Peer Reynders
Bartender

Joined: Aug 19, 2005
Posts: 2906
Originally posted by vidya mahavadi:
My understanding is that the complexity of web services is justified only if it is intended for cross platform communication. If it to be used for java clients only, we could probably use other distributed technologies in java like JMS, RMI, EJB etc.. What value can we add by switching to a new technology?


Actually the Added Value comes from the realization that in many cases it is more effective to distribute applications or services rather than distributing components (or worse, objects). Interoperability is a side effect of using HTTP as a transport and character-based XML (i.e. non-binary) for the data representation. Complexity arose particularly for SOAP/WSDL based web services and the associated WS-* standards (often with flexibility comes complexity).
With (coarse-grained) distributed services it isn't that uncommon that the object model for the service and client on common data is actually different even if they are both implemented on the same platform (Example scenario: Query on Interoperability). In that case message-based communication makes more sense than serialized objects (as supported by RMI).

SOAP/WSDL based web services (the one's accused of complexity) aren't the only option either - they just happen to be the ones that are supported right now out of the box by the majority of development tools. Designing your web application or service to expose a resource-based interface may already be enough for your needs.

Have a look the REST section of the Web Services FAQ and WADL (Introducing WADL; GlassFish: Web Application Description Language). If you interest is piqued move on to RESTful Web Services (amazon US)).

Sorry for adding to your confusion.


"Don't succumb to the false authority of a tool or model. There is no substitute for thinking."
Andy Hunt, Pragmatic Thinking & Learning: Refactor Your Wetware p.41
 
jQuery in Action, 2nd edition
 
subject: webservices vs existing technologies
 
Similar Threads
Client server using Java RMI Multihreading
a query on RMI based Chat Server
How to use java to invoke an external webservices (soap, soap1.2)?
New to J2EE: Is browser only option as the front end tool in J2EE
Middleware or Frontend : which is better for skill enhancement ?