diff --git a/src/main/java/org/hbp/mip/controllers/ExperimentApi.java b/src/main/java/org/hbp/mip/controllers/ExperimentApi.java index 6f33f80613a9291903a70d5fe87887bf21ef46bf..868b7ed860f08eb63d1bb88a572355d00f30c486 100644 --- a/src/main/java/org/hbp/mip/controllers/ExperimentApi.java +++ b/src/main/java/org/hbp/mip/controllers/ExperimentApi.java @@ -224,8 +224,12 @@ public class ExperimentApi { experiment.setResult(results.toString().replace("\0", "")); experiment.setHasError(code >= 400); experiment.setHasServerError(code >= 500); + + if(!isJSONValid(experiment.getResult())) + { + experiment.setResult("Unsupported variables !"); + } } catch (Exception e) { - e.printStackTrace(); experiment.setHasError(true); experiment.setHasServerError(true); experiment.setResult(e.getMessage()); @@ -247,6 +251,16 @@ public class ExperimentApi { }.start(); } + public boolean isJSONValid(String test) { + try { + new JsonParser().parse(test); + } catch (JsonParseException jpe) + { + return false; + } + return true; + } + private boolean isExaremeAlgo(Experiment experiment) { JsonArray algorithms = new JsonParser().parse(experiment.getAlgorithms()).getAsJsonArray(); String algoCode = algorithms.get(0).getAsJsonObject().get("code").getAsString();