diff --git a/server-application-server/source/java/ch/systemsx/cisd/openbis/generic/shared/dto/NewProperty.java b/server-application-server/source/java/ch/systemsx/cisd/openbis/generic/shared/dto/NewProperty.java index eb47482e852da5da9931ea13f8a02bb63e79ab42..6f66a297de10339e59f53d249548a2e5e8639157 100644 --- a/server-application-server/source/java/ch/systemsx/cisd/openbis/generic/shared/dto/NewProperty.java +++ b/server-application-server/source/java/ch/systemsx/cisd/openbis/generic/shared/dto/NewProperty.java @@ -58,7 +58,7 @@ public class NewProperty implements Serializable public String getValue() { - return (String) value; + return getPropertyAsString(value); } @BeanProperty(label = "value", optional = false) @@ -98,4 +98,25 @@ public class NewProperty implements Serializable return false; } + private String getPropertyAsString(Serializable propertyValue) { + if(propertyValue == null) { + return null; + } else { + if(propertyValue.getClass().isArray()) { + Serializable[] values = (Serializable[]) propertyValue; + StringBuilder builder = new StringBuilder("["); + for(Serializable value : values) { + if(builder.length() > 1) { + builder.append(", "); + } + builder.append(value); + } + builder.append("]"); + return builder.toString(); + } else { + return (String) propertyValue; + } + } + } + }