MockMvc больше не обрабатывает символы UTF-8 с помощью Spring Boot 2.2.0.RELEASEJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 MockMvc больше не обрабатывает символы UTF-8 с помощью Spring Boot 2.2.0.RELEASE

Сообщение Anonymous »

После того, как я обновился до недавно выпущенной версии Spring Boot 2.2.0.RELEASE, некоторые из моих тестов не увенчались успехом. Похоже, что MediaType.APPLICATION_JSON_UTF8 устарел и больше не возвращается в качестве типа контента по умолчанию из методов контроллера, которые не указывают тип контента явно.

Тестовый код типа

Код: Выделить всё

String content = mockMvc.perform(get("/some-api")
.contentType(MediaType.APPLICATION_JSON))
.andExpect(status().isOk())
.andExpect(content().contentType(MediaType.APPLICATION_JSON_UTF8))
.andReturn()
.getResponse()
.getContentAsString();
внезапно больше не работал, поскольку тип контента не соответствовал, как показано ниже.

Код: Выделить всё

java.lang.AssertionError: Content type
Expected :application/json;charset=UTF-8
Actual   :application/json
Изменение кода на .andExpect(content().contentType(MediaType.APPLICATION_JSON)) на данный момент решило проблему.

Но теперь при сравнении содержимого с ожидаемым сериализованным объектом по-прежнему наблюдается несоответствие, если в объекте есть какие-либо специальные символы. Похоже, что метод .getContentAsString() не использует кодировку символов UTF-8 по умолчанию (больше не использует).

Код: Выделить всё

java.lang.AssertionError: Response content expected: but was:
Expected :[{"description":"Er hörte leise Schritte hinter sich."}]
Actual   :[{"description":"Er hörte leise Schritte hinter sich."}]
Как получить контент в кодировке UTF-8?

Подробнее здесь: https://stackoverflow.com/questions/585 ... -0-release
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как удалить уязвимость, обнаруженная для Springframework/Spring-Beans/5.0.5.release/Spring-Beans-5.0.5.release.jar [дубл
    Anonymous » » в форуме JAVA
    0 Ответы
    23 Просмотры
    Последнее сообщение Anonymous
  • Spring Boot Web App обрабатывает неправильные запросы POST после обновления Spring/Spring Boot
    Anonymous » » в форуме JAVA
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous
  • Как протестировать с помощью MockMVC и CSRF в Spring Boot 3
    Гость » » в форуме JAVA
    0 Ответы
    47 Просмотры
    Последнее сообщение Гость
  • Как протестировать с помощью MockMVC и CSRF в Spring Boot 3
    Гость » » в форуме JAVA
    0 Ответы
    29 Просмотры
    Последнее сообщение Гость
  • Live-build: E: В репозитории «http://security.debian.org/debian-security Bullseye/updates Release» нет файла Release.
    Anonymous » » в форуме Linux
    0 Ответы
    81 Просмотры
    Последнее сообщение Anonymous

Вернуться в «JAVA»