Win a copy of Design for the Mind this week in the Design forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Using REST, How to Put Error 404 and Error 500 in HTTP Header?

 
Natalie Kopple
Ranch Hand
Posts: 325
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I am working on an application that requires me construct Error 404 and Error 500 manually. My application is client application --> Core --> Wrapper --> Adaptor --> database. All the communications between the Core and the Wrapper and between the Wrapper and Adapter use REST. And I am working on the Wrapper module.

When the Wrapper contacts the Adaptor to request for some data, if resource-not-found encountered, I am supposed to put 404 status code in the HTTP header and return it to the "core". All other exception internal to the Wrapper, I am supposed to put 500 status code in the HTTP header.

Would you guide me as to how to construct the code please?

For example, I think that I can do something like: ex.getCause(); But, how do I know it is resource-not-found so that I can construct the header and put 404 there? Thank you very much.

 
Anurag Verma
Ranch Hand
Posts: 167
Hibernate Spring Ubuntu
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Have an Interceptor on wrapper which will analyze the exception thrown by the service & will send 500/400/404 or any other required Http Response Code.
 
Natalie Kopple
Ranch Hand
Posts: 325
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
What is an Interceptor. How to use the Interceptor to analyze the exception thrown? Please help. Thank you.
 
Anurag Verma
Ranch Hand
Posts: 167
Hibernate Spring Ubuntu
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Interception is a concept using which you can execute some code before/after or around your actual service implementation. Implementation of Interceptors & how to use them is specific to the library that you are using to implement your web-services. Look this into the documentation of the library that you are using. I am known to apache CXF, & for that i can give reference as - http://cxf.apache.org/docs/interceptors.html
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic