1 Answer
1

Note: Umlaute that are saved in the Database get displayed correctly on the page.

Due to this fact, I'll assume that you've already properly set the response encoding to UTF-8 by either <%@page pageEncoding="UTF-8"%> in JSP or by <jsp-config> in web.xml.

Left behind the request encoding. You wasn't clear in your question nor the code if you're using GET or POST. If you're using POST, then you'd need to create a servlet filter which explicitly sets the HTTP request body encoding:

request.setCharacterEncoding("UTF-8");

Or if you're using GET, then you'd need to dig in the server configuration to set the URI/parameter encoding to UTF-8. How to do that depends on the server used which is also not clear from the question, let alone from your question history. I'll therefore just give an example of Tomcat: set the URIEncoding attribute of the <Connector> element in Tomcat's /conf/server.xml: