Note that there are some explanatory texts on larger screens.

plurals
  1. POSpring MVC REST Service and Client. I am looking for a better way to deal with errors
    primarykey
    data
    text
    <p>Spring MVC REST Service and Client. I am looking for a better way to deal with errors!</p> <p>I would like sometimes to return a errror message to the client or a status code but I dont know hiow. Can someone please tell me how to find a better way of dealing with errors and error messags for Spring REST Service and Client..</p> <p>Here is my service code:</p> <pre><code>@RequestMapping(value = "/{name}", method = RequestMethod.GET) @ResponseBody public User getName(@PathVariable String name, ModelMap model) throws ResourceNotFoundException { logger.debug("I am in the controller and got user name: " + name); /* Simulate a successful lookup for 2 users, this is where your real lookup code would go */ if ("user2".equals(name)) { return new User("User2 Real Name", name); } if ("user1".equals(name)) { return new User("User1 Real Name", name); } throw new ResourceNotFoundException("User Is Not Found"); } @ExceptionHandler(ResourceNotFoundException.class) public ModelAndView handleResourceNotFoundException(ResourceNotFoundException ex) { logger.warn("user requested a resource which didn't exist", ex); return new ModelAndView( jsonView, "error", "user requested a resource which didn't exist"); } </code></pre> <p>Now here is the code for the client:</p> <pre><code>Map&lt;String, String&gt; vars = new HashMap&lt;String, String&gt;(); vars.put("name", "user1"); /** * * Doing the REST call and then displaying the data/user object * */ RestTemplate restTemplate = new RestTemplate(commons); restTemplate.getMessageConverters().add(new MappingJacksonHttpMessageConverter()); restTemplate.getMessageConverters().add(new StringHttpMessageConverter()); try { User jsonreturn = restTemplate.getForObject("http://" + mRESTServer.getHost() + ":8080/json/{name}", User.class, vars); LOGGER.debug("return object: " + jsonreturn.toString()); } catch(Exception e) { LOGGER.error("error: " + e.toString()); } </code></pre> <p>I want to find so way to return a status code and message if the user is not found and plus my client code is getting this error:</p> <pre><code>org.springframework.http.converter.HttpMessageNotReadableException: Could not read JSON: Unrecognized field "error" </code></pre>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload