REST Web services Framework interview questions answers

REST web services  has quickly becoming defacto web services in web world and has almost replaced SOAP based web services which rules the world before. with growing use of REST in web technology space REST is also becoming increasingly important on J2EE and other web development interviews and if you say you know web-service then be prepare for some REST concept related questions. In this article I have put together some of the basic and some advanced REST web service questions together which will be useful to revise the concept before appearing for any REST web service interviews:

This article is in continuation of my earlier post on Interviews like Top Spring Interview Questions and Top Struts Interview Questions.

Top 10 REST Web services Framework interview questions answers

RESTFul Web Services Interview Questions and Answers

Here are list of my REST Interview questions, helpful for quick review before going for any web services interview on Java J2EE.

1) What is REST and RESTful web services ?
this is the first REST interview question on most of interviews as not everybody familiar with REST and also
start discussion based on candidates response. Anyway REST stands for REpresentational State Transfer (REST) its a relatively new concept of writing web services which enforces a stateless client server design where web services are treated as resource and can be accessed and identified by there URL unlike SOAP web services which were defined by WSDL.

Web services written by apply REST Architectural concept are called RESTful web services which focus on System resources and how state of Resource should be transferred over http protocol to a different clients written in different languages. In RESTful web services http methods like GET, PUT, POST and DELETE can can be used to perform CRUD operations.

2) What is differences between RESTful web services and SOAP web services ?
Though both RESTful web series and SOAP web service can operate cross platform they are architecturally different to each other, here is some of differences between REST and SOAP:

1) REST is more simple and easy to use than SOAP
2) REST uses HTTP protocol for producing or consuming web services while SOAP uses XML.
3) REST is lightweight as compared to SOAP and preferred choice in mobile devices and PDA's.
4) REST supports different format like text, JSON and XML while SOAP only support XML.
5) REST web services call can be cached to improve performance.REST Web Services Framework Interview Questions

3) What is Restlet framework ?
Restlet is leading RESTful web framework for Java applications is used to build RESTFul web services it has two part Restlet API and a Restlet implementation much like Servlet specification. There are many implementation of Restlet framework available you just need to add there jar in your classpath to use them. By using Restlet web framework you can write client and server.

4) What is Resource in REST framework ?
it represent a "resource" in REST architecture. on RESTLET API it has life cycle methods like init(), handle() and release() and contains a Context, Request and Response corresponding to specific target resource. This is now deprecated over ServerResource class and you should use that. see Restlet documentation for more details.

5) Can you use Restlet without any web-container ?
Yes, Restlet framework provide default server which can be used to handle service request in web container is not available.

6) What is difference between Restlets and Jersey ?
This REST web service interview questions is open for you all, post you answer in comment section.

7) What is RESTEasy ?
RESTEasy is another REST framework introduced in JBoss Application Server. This was rather easy REST interview questions. you can answer in detail only if you have used this or working in JBoss.

8) What are the tools used for creating RESTFull web services ?
You can use AJAX(Asynchronous JavaScript with XAML) and Direct Web Removing to consume web serives in web application. Both Eclipse and NetBeans also supported development of RESTFul services.

9) How to display custom error pages using RestFull web services ?
In order to customize error you need to extend StatusService and implement getRepresentation(Status, Request, Response) method with your custom code now assign instance of your CustomStatusService to appropriate "statusService property".

10) Which HTTP methods are supported by RestFull web services ?
Another common REST interview questioning RESTFul web service each Resource supports GET, POST, PUT and DELETE http methods.GET is mapped to represent(), POST - acceptRepresentation(), PUT- storeRepresentation and DELET for rmeoveRepresentation.

11) What is difference between top-down and bottom-up approach of developing web services ?
In top-down approach first WSDL document is created and than Java classes are developed based on WSDL contract, so if WSDL contract changes you got to change your Java classes while in case of bottom up approach of web service development you first create Java code and then use annotations like @WebService to specify contract or interface and WSDL field will be automatically generated from your build.

12) What happens if RestFull resources are accessed by multiple clients ? do you need to make it thread-safe?
Since a new Resource instance is created for every incoming Request there is no need to make it thread-safe or add synchronization. multiple client can safely access RestFull resources concurrently.

REST Web Service interview questions and Answers J2EEThat’s all on REST interview questions , I will add couple of  more REST Interview questions whenever I got them from my friend circle.

Some Interview questions article you may like

P.S. - If you want to learn how to develop RESTful Web Services using Spring Framework, check out Eugen Paraschiv's REST with Spring course. He has recently launched the certification version of the course, which is full of exercises and examples to further cement the real world concepts you will learn from the course.


Anonymous said...

This article is riddled with errors and inconsistencies...

To point out a few:
- The RESTful architecture is not a 'relatively new concept' it was developed in parallel with HTTP. Maybe you mean it has increased in popularity for web services?
- It focuses on resources, not system resources
- It is simpler by design but not necessarily simpler to use - SOAP has a lot of tooling for quick generation of WSs
- "REST uses HTTP protocol for producing or consuming web services while SOAP uses XML." Well, no, more often than not SOAP uses HTTP as its transport layer. Requests to RESTful web services can be encoded in XML.
- And as far as thread safety, this should absolutely be a concern. A 'resource' in rest-speak is the noun - a customer, a receipt, a product and while the controller handling the request might have a new controller instance to handle each request, each of the services called by the controller to save or load these resource representations should be checked for thread safety. At some point you will probably query a database and you wont have an instance of your database for every request...

Anonymous said...

HI can u pls tell me what is the difference between RESTful webservices and HttpServlet.
I didn't see any difference between these two.
Just extra annotations.

thanks a lot

Anonymous said...

SOAP Web Service Still rules and if you are going to work for already existing Web Service or going to develop new Web Service client, you are likely to work with SOAP Web Service in Java. Most of the interview questions I face on J2EE interviews related to Web Services are related to SOAP Web Service and only few of them are from REST Web Service. One question which puzzled me is that does Java has special support for REST Web Service ?

Anonymous said...

Some more to add
What is the difference between put and post?
How authentication can be added on the restful web services?
Is this a new technology, or correct use of the http methods?
How threads are handled and what all Data structures are used in the restlet API, If one is using the restlet api?
How the pooling of the threads are maintained inside the reslet API?
What are the different API supports the restful services?

Veerabhadra Deyannavar said...

That is RESTful not RESTFull

Anonymous said...

What is the purpose of different HTTP request type in RESTful web services?

Anonymous said...

Can anyone please provide good website for RESTful webservices tutorials where we can understand the concepts very clearly ???

Anonymous said...

what is the difference between JSON and XML?

Anonymous said...

What are the Context Resolvers in Restful Services?

Anonymous said...

What is JAX-RS Injection in Restful services what are the methods are there in jax-rs injection?

Javin Paul said...

What is the purpose of different HTTP request type in RESTful web services?
Answer :
HTTP GET : to retrieve something e.g an employee
HTTP POST : to store an object without id
HTTP PUT : to store an object with id
HTTP DELETE : to remove an object

Satyaenda said...

Great questions, Please see here for some more RESTful WebService Interview Questions

Amit Ingole said...

I have faced below questions:
1) In Jersy implementation , Which jar should I include to convert JSON/XML request to POJO ?
2) How we can identify that particular webservice is accepting or generating particular input or output format?
3) How shall I handle exceptions in webservices ?

aNkiTa Arya said...

Can anyone help me with business scenarios where POST should be used? Is POST safer as compared to GET(found mixed answers for the same).

Post a Comment