diff --git a/api-openbis-javascript/src/v3/as/dto/common/entity/AbstractEntity.js b/api-openbis-javascript/src/v3/as/dto/common/entity/AbstractEntity.js
index 4dfa008ca1fe1afc61d1dc48ad86013af28719c8..69d3e175ae7cc282b0f18db92ed736089ee15d51 100644
--- a/api-openbis-javascript/src/v3/as/dto/common/entity/AbstractEntity.js
+++ b/api-openbis-javascript/src/v3/as/dto/common/entity/AbstractEntity.js
@@ -22,8 +22,15 @@ define([ "stjs", "util/Exceptions", "as/dto/common/entity/AbstractEntityProperty
             }
         };
 
+        prototype.setProperties = function(properties) {
+            this.properties = properties;
+        };
+
     }, {
-        fetchOptions : "AbstractEntityFetchOptions"
+        fetchOptions : {
+            name : "AbstractEntityFetchOptions",
+            arguments : [ "Object" ]
+        }
     });
     return AbstractEntity;
 })
\ No newline at end of file
diff --git a/api-openbis-javascript/src/v3/as/dto/common/entity/AbstractEntityCreation.js b/api-openbis-javascript/src/v3/as/dto/common/entity/AbstractEntityCreation.js
index c52e32bc542398c54dabf907ae64a9bcbac2a276..fc44b373ceb2a18c4a4bfbc69cf68e9831373964 100644
--- a/api-openbis-javascript/src/v3/as/dto/common/entity/AbstractEntityCreation.js
+++ b/api-openbis-javascript/src/v3/as/dto/common/entity/AbstractEntityCreation.js
@@ -2,12 +2,12 @@ define([ "stjs", "util/Exceptions", "as/dto/common/entity/AbstractEntityProperty
 	var AbstractEntityCreation = function() {
         AbstractEntityPropertyHolder.call(this);
 	};
-	stjs.extend(AbstractEntityCreation, null, [], function(constructor, prototype) {
+	stjs.extend(AbstractEntityCreation, AbstractEntityPropertyHolder, [AbstractEntityPropertyHolder], function(constructor, prototype) {
         prototype['@type'] = 'as.dto.common.entity.AbstractEntityCreation';
         constructor.serialVersionUID = 1;
 
         prototype.getProperties = function() {
-          return properties;
+          return this.properties;
         };
 
         prototype.setProperties = function(properties) {
diff --git a/api-openbis-javascript/src/v3/as/dto/common/entity/AbstractEntityPropertyHolder.js b/api-openbis-javascript/src/v3/as/dto/common/entity/AbstractEntityPropertyHolder.js
index db05bb683618a234956367543928631777c6864e..b5a061a3abfd70d3d6e2a15b4a5320260ddb122b 100644
--- a/api-openbis-javascript/src/v3/as/dto/common/entity/AbstractEntityPropertyHolder.js
+++ b/api-openbis-javascript/src/v3/as/dto/common/entity/AbstractEntityPropertyHolder.js
@@ -6,14 +6,6 @@ define([ "stjs", "util/Exceptions" ], function(stjs, exceptions) {
         constructor.serialVersionUID = 1;
         prototype.properties = null;
 
-//        prototype.getProperties = function() {
-//          return properties;
-//        };
-//
-//        prototype.setProperties = function(properties) {
-//            this.properties = properties;
-//        };
-
         prototype.getProperty = function(propertyName) {
             var properties = this.getProperties();
             return properties ? properties[propertyName] : null;
diff --git a/api-openbis-javascript/src/v3/as/dto/common/entity/AbstractEntityUpdate.js b/api-openbis-javascript/src/v3/as/dto/common/entity/AbstractEntityUpdate.js
index 41bdc163d3bb3c4cdb26b28c2663f054b65fc548..4c9108d3746f868103f64f2a1ca878dadd3b1d52 100644
--- a/api-openbis-javascript/src/v3/as/dto/common/entity/AbstractEntityUpdate.js
+++ b/api-openbis-javascript/src/v3/as/dto/common/entity/AbstractEntityUpdate.js
@@ -2,12 +2,12 @@ define([ "stjs", "util/Exceptions", "as/dto/common/entity/AbstractEntityProperty
 	var AbstractEntityUpdate = function() {
         AbstractEntityPropertyHolder.call(this);
 	};
-	stjs.extend(AbstractEntityUpdate, null, [], function(constructor, prototype) {
+	stjs.extend(AbstractEntityUpdate, AbstractEntityPropertyHolder, [AbstractEntityPropertyHolder], function(constructor, prototype) {
         prototype['@type'] = 'as.dto.common.entity.AbstractEntityUpdate';
         constructor.serialVersionUID = 1;
 
         prototype.getProperties = function() {
-          return properties;
+          return this.properties;
         };
 
         prototype.setProperties = function(properties) {
diff --git a/test-api-openbis-javascript/servers/common/core-plugins/tests/1/as/webapps/openbis-test/html/openbis-test.js b/test-api-openbis-javascript/servers/common/core-plugins/tests/1/as/webapps/openbis-test/html/openbis-test.js
index 12d8e03c5d108c70dbcc3bd5c9ae687599bb1a2b..aad9dc8bb0dbe2edd71583c2414ef37c32c94ee5 100644
--- a/test-api-openbis-javascript/servers/common/core-plugins/tests/1/as/webapps/openbis-test/html/openbis-test.js
+++ b/test-api-openbis-javascript/servers/common/core-plugins/tests/1/as/webapps/openbis-test/html/openbis-test.js
@@ -664,6 +664,7 @@ test("getDataStoreBaseURLs()", function() {
 test("listDataSetTypes()", function() {
 	createFacadeAndLogin(function(facade) {
 		facade.listDataSetTypes(function(response) {
+		    debugger;
 			assertObjectsCount(response.result, 38);
 			facade.close();
 		});
diff --git a/test-api-openbis-javascript/servers/common/core-plugins/tests/1/as/webapps/openbis-v3-api-test/html/test/dtos.js b/test-api-openbis-javascript/servers/common/core-plugins/tests/1/as/webapps/openbis-v3-api-test/html/test/dtos.js
index dea86fa10209e102685516cc553a92739f61c50a..9e977207982098f1998e33bba16153902ddcd183 100644
--- a/test-api-openbis-javascript/servers/common/core-plugins/tests/1/as/webapps/openbis-v3-api-test/html/test/dtos.js
+++ b/test-api-openbis-javascript/servers/common/core-plugins/tests/1/as/webapps/openbis-v3-api-test/html/test/dtos.js
@@ -389,6 +389,11 @@ var fullTypes = [
 "as/dto/common/fetchoptions/SortParameter",
 "as/dto/common/fetchoptions/SortOrder",
 "as/dto/common/fetchoptions/SortOptions",
+"as/dto/common/fetchoptions/AbstractEntityFetchOptions",
+"as/dto/common/entity/AbstractEntity",
+"as/dto/common/entity/AbstractEntityPropertyHolder",
+"as/dto/common/entity/AbstractEntityUpdate",
+"as/dto/common/entity/AbstractEntityCreation",
 "as/dto/common/Relationship",
 "as/dto/common/get/GetObjectsOperationResult",
 "as/dto/common/get/GetServerPublicInformationOperation",
diff --git a/test-api-openbis-javascript/servers/common/core-plugins/tests/1/as/webapps/openbis-v3-api-test/html/test/test-dto-roundtrip.js b/test-api-openbis-javascript/servers/common/core-plugins/tests/1/as/webapps/openbis-v3-api-test/html/test/test-dto-roundtrip.js
index dc17bfaf5c10ef7e1308fe46b6feae63f39633b0..88d4a46a1eda7f95a8b73b21cbdeba0cd1e8fb16 100644
--- a/test-api-openbis-javascript/servers/common/core-plugins/tests/1/as/webapps/openbis-v3-api-test/html/test/test-dto-roundtrip.js
+++ b/test-api-openbis-javascript/servers/common/core-plugins/tests/1/as/webapps/openbis-v3-api-test/html/test/test-dto-roundtrip.js
@@ -6,8 +6,13 @@ define(["jquery", "underscore", "openbis", "test/common", "test/dtos"], function
         "as.dto.common.delete.DeleteObjectsOperationResult",
         "as.dto.common.delete.DeleteObjectsWithTrashOperationResult",
         "as.dto.common.delete.DeleteObjectsWithoutTrashOperationResult",
+        "as.dto.common.entity.AbstractEntity",
+        "as.dto.common.entity.AbstractEntityPropertyHolder",
+        "as.dto.common.entity.AbstractEntityUpdate",
+        "as.dto.common.entity.AbstractEntityCreation",
         "as.dto.common.fetchoptions.FetchOptions",
         "as.dto.common.fetchoptions.SortOptions",
+        "as.dto.common.fetchoptions.AbstractEntityFetchOptions",
         "as.dto.common.get.GetObjectsOperation",
         "as.dto.common.get.GetObjectsOperationResult",
         "as.dto.common.id.ObjectIdentifier",