Получение сообщения об ошибке java.lang.IllegalStateException: getWriter() уже был вызван! при возврате ResponseEntity<>

Я получаю сообщение об ошибке при возврате return new ResponseEntity<>(jsonObject, HttpStatus.BAD_REQUEST); в приведенном ниже коде, где я печатаю строку: LOG.trace («Предоставлен неверный клиент»); в другой части

@Action("VALIDATE")
@RequestMapping(value = "/validate", method = RequestMethod.POST)
public ResponseEntity<JSONObject> valCode(HttpServletRequest request, String userId, String code,
        HttpServletResponse response) throws IOException, TokenIssuerException {

    JSONObject jsonObject = new JSONObject();

    if (code != null) {

        ICode cacheCode = tokenCache.getCode(code, null);

        IClientInfo clientInfo = clientAuthCore.getClient(request, response, true);

        boolean checkClientId = checkClientID(clientInfo, cacheCode);
        if (checkClientId) {

// бизнес-логика

        } else {
            LOG.trace("Invalid Client provided");
            return new ResponseEntity<>(jsonObject, HttpStatus.BAD_REQUEST);
        }
    } else {
        LOG.trace("Invalid parameters");
        return new ResponseEntity<>(jsonObject, HttpStatus.BAD_REQUEST);
    }

}

Пожалуйста, проверьте свою реализацию clientAuthCore.getClient(request, response, true), подозревая, что она уже написала/'отвечала' в выходном потоке

Jayr 29.05.2019 17:39
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
1
32
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

я возвращаю null вместо другого объекта JSON, который является разрешением, поскольку уже вызывается getwrite.

Другие вопросы по теме