From 9f2292ea919c6e110f40a52c0b21b31e2ee3c264 Mon Sep 17 00:00:00 2001
From: Piotr Gawron <piotr.gawron@uni.lu>
Date: Thu, 25 Jul 2019 19:20:43 +0200
Subject: [PATCH] when type of the argument is wrong return 400

---
 rest-api/src/main/java/lcsb/mapviewer/api/BaseController.java | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/rest-api/src/main/java/lcsb/mapviewer/api/BaseController.java b/rest-api/src/main/java/lcsb/mapviewer/api/BaseController.java
index 2698fdcf0a..b286c43cd4 100644
--- a/rest-api/src/main/java/lcsb/mapviewer/api/BaseController.java
+++ b/rest-api/src/main/java/lcsb/mapviewer/api/BaseController.java
@@ -14,6 +14,7 @@ import org.springframework.web.HttpMediaTypeNotSupportedException;
 import org.springframework.web.bind.MissingServletRequestParameterException;
 import org.springframework.web.bind.ServletRequestBindingException;
 import org.springframework.web.bind.annotation.ExceptionHandler;
+import org.springframework.web.method.annotation.MethodArgumentTypeMismatchException;
 
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.fasterxml.jackson.databind.node.ObjectNode;
@@ -41,7 +42,8 @@ public abstract class BaseController {
     } else if (e instanceof QueryException
         || e instanceof HttpMessageNotReadableException
         || e instanceof MissingServletRequestParameterException
-        || e instanceof HttpMediaTypeNotSupportedException) {
+        || e instanceof HttpMediaTypeNotSupportedException
+        || e instanceof MethodArgumentTypeMismatchException) {
       logger.error(e, e);
       return createErrorResponse("Query server error.", e.getMessage(), new HttpHeaders(), HttpStatus.BAD_REQUEST);
     } else if (e instanceof ServletRequestBindingException && e.getMessage().contains(Configuration.AUTH_TOKEN)) {
-- 
GitLab