I happened to come back to this problem. I could reproduce how you got the garbled display. Please see the following test case script.
import java.nio.charset.StandardCharsets
String germanString1 = 'zür'
byte[] encodedBytes = germanString1.getBytes(StandardCharsets.UTF_8);
String decodedString = new String(encodedBytes, StandardCharsets.ISO_8859_1);
println(germanString1 + " -> " + decodedString)
When I ran this, I got the following output in the log:
2020-12-28 22:13:55.299 DEBUG testcase.TC2 - 4: println(germanString1 + " -> " + decodedString)
zür -> zür
You can find zür in the screenshot (in the Response body) as well. This proves, some portion of your software has a bug; but I have no clue to identify which particular portion of your software has this problem.
I guess as follows:
Katalon Studio uses utf-8 for character encoding. You can see the reason in the post “Katalon.ini should speciify -Dfile.encoding=utf-8 - #10 by kazurayam”.
So the zür character string in UNICODE, which you typed in the GUI, is encoded into byte in the Request object using UTF-8. The request object carries that byte to your web app.
Your web app received the request and decoded the byte in the Request object using mistakenly in ISO-8859-1; at this timing the umlaut character is garbled: the umlaut character in utf-8 is decoded into a strange UNICODE character ü.
