File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Other Open Source Projects and the fly likes CMIS interfaces: why more than one? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Products » Other Open Source Projects
Bookmark "CMIS interfaces: why more than one?" Watch "CMIS interfaces: why more than one?" New topic

CMIS interfaces: why more than one?

Nikes Shah
Ranch Hand

Joined: Jul 18, 2007
Posts: 133

Are there any business use cases which can justify when to use which type of CMIS interface (WebServices, REST etc.)

In other words, why more than one interfaces?

Thanks in advance.

Florian Mueller

Joined: Sep 24, 2012
Posts: 6
Hi Nikesh,

CMIS defines multiple bindings to increase the adoption. When you design a new interface or standard today, you probably would go for a RESTish interface. And that's why there is the CMIS AtomPub binding. But, it is a fact that many companies spent a ton of money a few years ago into a Web Services infrastructure. That includes security services, identity services, auditing services, and so on. The effort to incorporate a REST interface into this environment would be huge. But, if CMIS would only define a Web Services interfaces, most modern systems would not touch it - for technical and ideological reasons.

So CMIS leaves the CMIS client the choice of what fits better into the IT infrastructure. And on top of that, Apache Chemistry hides all those low-level details.
If you, for example, implement against Apache Chemistry OpenCMIS, you implement against a Java interface. Which binding is finally used in the production environment (almost) doesn't matter.


Nikes Shah
Ranch Hand

Joined: Jul 18, 2007
Posts: 133
Thanks Florian

That makes sense.

Considering complexity of WebServices architecture, REST provides simplicity.

I agree. Here's the link:
subject: CMIS interfaces: why more than one?
It's not a secret anymore!