From d5d6e78a73b89bf298ae69458904632309c2e68c Mon Sep 17 00:00:00 2001 From: Sonia Zorba <sonia.zorba@inaf.it> Date: Tue, 23 Feb 2021 18:44:24 +0100 Subject: [PATCH] Fixed encoding issue in ErrorController --- .../it/inaf/oats/vospace/exception/ErrorController.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/main/java/it/inaf/oats/vospace/exception/ErrorController.java b/src/main/java/it/inaf/oats/vospace/exception/ErrorController.java index 5e4143e..63e95ea 100644 --- a/src/main/java/it/inaf/oats/vospace/exception/ErrorController.java +++ b/src/main/java/it/inaf/oats/vospace/exception/ErrorController.java @@ -1,5 +1,6 @@ package it.inaf.oats.vospace.exception; +import java.nio.charset.StandardCharsets; import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -23,7 +24,11 @@ public class ErrorController extends AbstractErrorController { public void errorText(HttpServletRequest request, HttpServletResponse response) throws Exception { Map<String, Object> errors = super.getErrorAttributes(request, true); response.setContentType("text/plain;charset=UTF-8"); - response.getOutputStream().print((String) errors.get("message")); + response.setCharacterEncoding("UTF-8"); + String errorMessage = (String) errors.get("message"); + if (errorMessage != null) { + response.getOutputStream().write(errorMessage.getBytes(StandardCharsets.UTF_8)); + } } @Override -- GitLab