У меня недавно была проблема с URL-адресами для изображений, имена которых включали умлауты и немецкие специальные символы, и я потерял день на поиски решения. Изображения просто не отображаются, если в имени файла или имени каталога есть ä или и ü. Я думал, что это может быть весна, или какая-то другая технология Java, с которой я работаю, или в браузере. И как ни странно, даже с закодированным URL, он не смог найти изображение. Но, в конце концов, решение было в моей конфигурации tomcat server.xml. В вашем файле server.xml найдите свой соединитель и добавьте эти две строки:
URIEncoding="UTF-8"
useBodyEncodingForURI="true"
В конце все должно выглядеть примерно так:
<Connector connectionTimeout="20000"
port="8080"
protocol="HTTP/1.1"
redirectPort="8443"
URIEncoding="UTF-8"
useBodyEncodingForURI="true"/>
Теперь мне не нужно url-кодировать URL. Это помощь моим клиентам, потому что они видят правильно написанные немецкие слова в URL.
Вот еще один совет: если вы кодируете в eclipse и запускаете и останавливаете свой сервер изнутри eclipse, тогда файл конфигурации (server.xml) может находиться в вашем рабочем пространстве eclipse в папке Servers. Это должно быть изменено здесь, чтобы оно работало с затмением. Это может приводить в бешенство, когда вы внесли изменения в свою основную конфигурацию Tomcat, и URL-адреса работают там, но они все еще не работают при запуске сервера в Eclipse.
Это сделало это для меня. Я надеюсь, что это помогает кому-то там! : -)