Granny's Programming Pearls
"inside of every large program is a small program struggling to get out"
  • 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 all forums
this forum made possible by our volunteer staff, including ...
  • Campbell Ritchie
  • Bear Bibeault
  • Devaka Cooray
  • Liutauras Vilda
  • Jeanne Boyarsky
  • Knute Snortum
  • Junilu Lacar
  • paul wheaton
Saloon Keepers:
  • Ganesh Patekar
  • Frits Walraven
  • Tim Moores
  • Ron McLeod
  • Carey Brown
  • Stephan van Hulst
  • salvin francis
  • Tim Holloway

Query on Interopability  RSS feed

Ranch Hand
Posts: 78
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Leonard, Sam,

Do we forsee any interopability issues in using the REST Architecture?

For example, We have a resource deployed in a heterogeneous environment using the ROA Architecture, the resource returns a custom (.Net) object. Our Java Struts Client makes a GET request to the resource and is returned the Custom object. So how well are autotying issues handled for these kind of web services or are we back again with the same casting issues that we find in our traditional web services when it comes to using custom return types and parameter values.

Dinesh Sundrani
SCJP 1.5 [86%]
SCWCD [95%]
SCDJWS [98%]
Posts: 2968
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
In my opinion the interoperability problems that you are describing are of your own choosing. If you desire to publish an interoperable representation then do so, for example through a reasonable XML representation that complies with a publicly available schema. This may require that your forego the convenience of some kind of tooled platform-specific serialization protocol.

Ultimately the object model of the resource representation can differ considerably between the server the client independently of whether different hosting platforms are used. The client and the server may overlay differing semantics over the same resource representation.

Take a Purchase Order (PO) for example. The client needs to build the Purchase Order in order to fulfill some requirements of a business task. The client's Purchase Order object model is geared towards assembling the PO and should possibly make it easy to determine whether a PO (or a set of POs) fulfills the requirements of the business task. The server on the other hand will want an object model of the PO that makes it easy to process it through the various stages of approval and fulfillment. A shared data representation between client and server doesn't automatically imply a shared object model.
[ June 12, 2007: Message edited by: Peer Reynders ]
Posts: 13
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Continuing with a purchase order example, purchase orders often contain fields like dates and decimal numbers. When I was younger and less cynical I found that interoperability was hard, and wrote this.

This lead to my joining a group called SOAP Builders and hosting or co-hosting the first three interop events. This ultimately lead to the formation of WS-I, and my coming to the realization that layering on of greater and greater abstractions doesn't solve these problems; instead what you find is that abstractions leak.
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!