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