diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/public/resources/api/v3/util/Json.js b/openbis/source/java/ch/systemsx/cisd/openbis/public/resources/api/v3/util/Json.js index 5b7b47799bf60fd0560c80b07909fcd8ae231df7..556741631d59bae46685fa5a83540fd2e09adf20 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/public/resources/api/v3/util/Json.js +++ b/openbis/source/java/ch/systemsx/cisd/openbis/public/resources/api/v3/util/Json.js @@ -159,11 +159,11 @@ define([ 'jquery', 'underscore' ], function(jquery, _) { } } else if (jsonObject instanceof Object) { if (jsonObject["@id"] && jsonObject["@type"]) { - var jsonTypeArguments = jsonType ? jsonType["arguments"] : null + var jsonTypeArguments = (jsonType && jsonType["arguments"]) ? jsonType["arguments"] : null return fromJsonObjectWithType(jsonTypeArguments, jsonObject, objectMap, modulesMap) } else { var map = {}; - var jsonType = jsonType ? jsonType["arguments"][1] : null; + var jsonType = (jsonType && jsonType["arguments"] && jsonType["arguments"].length > 1) ? jsonType["arguments"][1] : null; Object.keys(jsonObject).forEach(function(key) { var dto = fromJsonObjectWithTypeOrArrayOrMap(jsonType, jsonObject[key], objectMap, modulesMap);