quarkus: Broken encoding in response body if application is running on OpenShift
Describe the bug
Given:
- Application uses quarkus-resteasy-reactive-jackson
- The application is run on OpenShift
- Application responds to HTTP request with response, which has HTTP status 200 and word “Slovník” in the body(the 6th letter is U+00ED, “LATIN SMALL LETTER I WITH ACUTE”)
Expected behavior
The client should receive http response with “Slovník” in the body.
Actual behavior
The client receives http response with “Slovn?k” in the body.
How to Reproduce?
Minimal reproducer:
https://github.com/fedinskiy/quarkus-reproducer/tree/openshift_fail
Scripts run.sh and stop.sh contain commands to start and stop the application on the OCP cluster respectively.
Run curl ${path to your app}/hello/broken
to get the result.
Output of uname -a
or ver
4.18.0-305.el8.x86_64
Output of java -version
Java version: 11.0.12, vendor: Oracle Corporatio
GraalVM version (if different from Java)
No response
Quarkus version or git rev
2c1be38c1f7dcdb0176c871f2d142f5f2a4cd1f2
Build tool (ie. output of mvnw --version
or gradlew --version
)
Apache Maven 3.8.3 (ff8e977a158738155dc465c6a97ffaf31982d739)
Additional information
OpenShift 4.9
About this issue
- Original URL
- State: closed
- Created 3 years ago
- Comments: 20 (19 by maintainers)
Commits related to this issue
- Ensure that UTF8 is used as the default encoding in RESTEasy Reactive This was already being done when producing text/plain, but in cases where application/json was being used and the actual entity w... — committed to geoand/quarkus by geoand 2 years ago
- Ensure that UTF8 is used as the default encoding in RESTEasy Reactive This was already being done when producing text/plain, but in cases where application/json was being used and the actual entity w... — committed to geoand/quarkus by geoand 2 years ago
- Merge pull request #22644 from geoand/#21700 Ensure that UTF8 is used as the default encoding in RESTEasy Reactive — committed to quarkusio/quarkus by gsmet 2 years ago
- Ensure that UTF8 is used as the default encoding in RESTEasy Reactive This was already being done when producing text/plain, but in cases where application/json was being used and the actual entity w... — committed to gsmet/quarkus by geoand 2 years ago
BTW, +100 for
Thinking fast and slow
in the tests 😃