Я искал ответ, и многие ответы не решили мою проблему, хотя они решали очень похожие проблемы.
Итак, моя проблема заключается в следующем: у меня есть переменная пути, которая может содержать символ «/». Это же значение также содержит другие специальные символы, такие как "." "+" "=" и т. д. в основном все допустимые символы Base64.
Но Spring MVC выдает 404 с журналами, в которых говорится, что обработчик не найден. Я также пытался использовать регулярные выражения в переменной пути, но безрезультатно. поэтому ниже идентификатор моих фрагментов кода:
http://localhost:8080/sale/public/viewSaleDetails/b91a03730a746a2b27e1c7bbbd94ddf6a9df593301cd96c606348df5eed235da.FkJJbOqEM8Xvhffe6FwUdQ8/mMCD4+fxpY7w5L9kbJ8=
мой URL. Если вы видите, что у него есть / в значении переменной пути. вместе с "." и "+" и "=". Spring отображает это правильно, если я удаляю / между символами «m» и «8». но с / в значении это просто не работает. Я пробовал много вещей, включая фильтр кодирования символов, регулярное выражение в переменной пути и т. Д. Пожалуйста, помогите.
Также я не хочу использовать параметры запроса, насколько это возможно.
@RequestMapping(value = "/public/viewSaleDetails/{id}", method = RequestMethod.GET)
мое отображение. Кроме того, URL-адрес попадает из браузера, поскольку он не имеет кодировки URL-адреса. Я отследил его на сетевой панели браузера, и он не кодирует его, как ожидалось. Я использую версию Spring 4.2.8 RELEASE с java 8 и tomcat 8.