Удаление двойных кавычек из ответа MissingServletRequestParameterException - PullRequest
0 голосов
/ 11 марта 2020

Ситуация такова, что мне нужно, чтобы ответ MissingServletRequestParameterException был простым текстом, в то время как в других случаях все должно быть возвращено в json.

Вот что у меня есть в классе контроллера:

@ExceptionHandler(MissingServletRequestParameterException.class)
    @ResponseBody
    public ResponseEntity<String> handleMissingParams(MissingServletRequestParameterException ex) {
        String error = "<html><head><title>Error</title></head><body>"+ ex.getMessage() +"</body></html>";
//        return ResponseEntity.badRequest()
//                .header(MediaType.TEXT_PLAIN_VALUE)
//                .body(error);

        HttpHeaders httpHeaders = new HttpHeaders();
        httpHeaders.setContentType(MediaType.TEXT_PLAIN);
        return new ResponseEntity(error, httpHeaders, HttpStatus.BAD_REQUEST);
    }

    @RequestMapping(method = RequestMethod.GET, path = "/reconciliation/api/getLoginByIntermediaAgent")
    public ResponseEntity getLoginsByIA(@RequestParam("ia") String ia) {
        return aaaApiStub.getLoginsByIA(ia);
    }

В комментируемом разделе вы можете увидеть то, что я тоже попробовал.

Что он возвращает сейчас:

"<html><head><title>Error</title></head><body>Required String parameter 'ia' is not present</body></html>"

Что он должен вернуть:

<html><head><title>Error</title></head><body>Required String parameter 'ia' is not present</body></html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...