diff --git a/api-openbis-javascript/src/v3/as/dto/sample/Sample.js b/api-openbis-javascript/src/v3/as/dto/sample/Sample.js index 23852de463d088b31a5210fd5e07370233c8bc96..795675bec4d8e1627b8199ddfd929741693b46ae 100644 --- a/api-openbis-javascript/src/v3/as/dto/sample/Sample.js +++ b/api-openbis-javascript/src/v3/as/dto/sample/Sample.js @@ -561,7 +561,7 @@ define([ "stjs", "util/Exceptions", "as/dto/common/Relationship" ], function(stj experiment : "Experiment", properties : { name : "Map", - arguments : [ "String", "String" ] + arguments : [ "String", "Serializable" ] }, materialProperties : { name : "Map", diff --git a/api-openbis-javascript/src/v3/util/Json.js b/api-openbis-javascript/src/v3/util/Json.js index 556741631d59bae46685fa5a83540fd2e09adf20..595179d138805c2e1147b096ffddbfdb69d5353e 100644 --- a/api-openbis-javascript/src/v3/util/Json.js +++ b/api-openbis-javascript/src/v3/util/Json.js @@ -144,8 +144,9 @@ define([ 'jquery', 'underscore' ], function(jquery, _) { } var fromJsonObjectWithTypeOrArrayOrMap = function(jsonType, jsonObject, objectMap, modulesMap) { - if (jsonObject instanceof Array) { - if (jsonType && _.isString(jsonType) && jsonObject.length == 2) { + if (Array.isArray(jsonObject)) { + // properties are <String, Serializable> + if (jsonType && _.isString(jsonType) && jsonObject.length == 2 && jsonType != 'Serializable') { return jsonObject[1]; } else { var array = [];