Jazz Forum Welcome to the Jazz Community Forum Connect and collaborate with IBM Engineering experts and users

What is the difference between RTC Work Item JAVA API and REST API?

Both APIs are listed here: https://jazz.net/wiki/bin/view/Main/RtcSdk20


In what scenarios should I use one over the other? Thanks. 

1

0 votes


Accepted answer

Permanent link
The "Rest API" is an HTTP API, while the "Java API" is (as you would expect) a Java API.
There are two flavors of HTTP API's ... those that are OSLC-based, and those that are not.
The OSLC-based HTTP API's have the advantage that you can use them to talk to a wider range of servers (any server that supports OSLC).
The advantage of the Java API's are that they cover the full product functionality, but some of the Java API's are not public, which means that there is a higher risk that they may change in a subsequent release.

So the general guidance would be use the OSLC-based HTTP API's when you can, but if the functionality you need is not available there, then use the non-OSLC-based HTTP API's when you want to use HTTP, and use the Java APIs when you want to use Java.

Clement Liu selected this answer as the correct answer

2 votes

Comments

Thank you. Can you explain a little bit about the non-OSLC-based HTTP API? I thought RTC only provides the OSLC-based HTTP API and Java API. Were you actually referring to the REST API? 

There are RTC HTTP APIs that are not defined by OSLC.  For example, all of the RTC SCM APIs used by the RTC web client fall in this category, because there is not yet an approved OSLC API for the SCM domain.

Note: I personally am not a fan of the term "REST API".   It originally was a well defined term (as originally defined by Roy Fielding in his dissertation: http://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm ... I encourage everyone to read that chapter before using the term "REST" :-), but has since then has become more of a label that anyone feels free to use to say that their protocol is "good".   On the other hand, the terms "Java API", "HTTP API", and "OSLC API" are well defined, so I personally stick to those terms.  

1 vote

Thank you, Sir! 

Your answer

Register or log in to post your answer.

Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.

Search context
Follow this question

By Email: 

Once you sign in you will be able to subscribe for any updates here.

By RSS:

Answers
Answers and Comments
Question details
× 10,938
× 479
× 411
× 137
× 18

Question asked: Aug 19 '13, 10:26 a.m.

Question was seen: 8,221 times

Last updated: Aug 19 '13, 4:50 p.m.

Confirmation Cancel Confirm