From 74af40afd03a37ada2f9c82a6fa25a781a34373e Mon Sep 17 00:00:00 2001 From: "miriam.baglioni" Date: Wed, 26 Apr 2023 15:54:32 +0200 Subject: [PATCH] avoid issue for empty string while trying to create selection constraints from string --- .../community/selectioncriteria/SelectionCriteria.java | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/libs/dnet-exporter-model/src/main/java/eu/dnetlib/openaire/exporter/model/community/selectioncriteria/SelectionCriteria.java b/libs/dnet-exporter-model/src/main/java/eu/dnetlib/openaire/exporter/model/community/selectioncriteria/SelectionCriteria.java index f93c105a..c023df00 100644 --- a/libs/dnet-exporter-model/src/main/java/eu/dnetlib/openaire/exporter/model/community/selectioncriteria/SelectionCriteria.java +++ b/libs/dnet-exporter-model/src/main/java/eu/dnetlib/openaire/exporter/model/community/selectioncriteria/SelectionCriteria.java @@ -6,6 +6,10 @@ import java.util.List; import com.fasterxml.jackson.annotation.JsonAutoDetect; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; +import org.apache.commons.io.IOUtils; +import org.apache.commons.lang3.StringUtils; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; @JsonAutoDetect public class SelectionCriteria implements Serializable { @@ -14,7 +18,7 @@ public class SelectionCriteria implements Serializable { * */ private static final long serialVersionUID = 4303936216579280542L; - + private static final Log log = LogFactory.getLog(SelectionCriteria.class); private List criteria; public SelectionCriteria() {} @@ -28,9 +32,13 @@ public class SelectionCriteria implements Serializable { } public static SelectionCriteria fromJson(final String json) { + if(StringUtils.isEmpty(json)){ + return null; + } try { return new ObjectMapper().readValue(json, SelectionCriteria.class); } catch (final JsonProcessingException e) { + log.error(e.getMessage()); throw new RuntimeException(e); } }