diff --git a/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/ResourceSyncRequestHandler.java b/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/ResourceSyncRequestHandler.java
index fb3b819db38bdb0d9d0de30a3e867d30d76c71be..213147837cf1e8fa9136932792ccee339751cf42 100644
--- a/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/ResourceSyncRequestHandler.java
+++ b/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/ResourceSyncRequestHandler.java
@@ -15,10 +15,18 @@
  */
 package ch.ethz.sis.openbis.generic.server.dss;
 
+import org.apache.commons.lang.time.DateUtils;
+
 import ch.ethz.sis.openbis.generic.server.EntityRetriever;
+import ch.systemsx.cisd.common.spring.HttpInvokerUtils;
+import ch.systemsx.cisd.common.ssl.SslCertificateHelper;
 import ch.systemsx.cisd.openbis.dss.generic.server.oaipmh.JythonBasedRequestHandler;
 import ch.systemsx.cisd.openbis.dss.generic.server.plugins.jython.IRequestHandlerPluginScriptRunner;
 import ch.systemsx.cisd.openbis.dss.generic.shared.ServiceProvider;
+import ch.systemsx.cisd.openbis.generic.server.jython.api.v1.IMasterDataRegistrationTransaction;
+import ch.systemsx.cisd.openbis.generic.server.jython.api.v1.impl.EncapsulatedCommonServer;
+import ch.systemsx.cisd.openbis.generic.server.jython.api.v1.impl.MasterDataRegistrationService;
+import ch.systemsx.cisd.openbis.generic.shared.ICommonServer;
 import ch.systemsx.cisd.openbis.generic.shared.dto.SessionContextDTO;
 
 /**
@@ -32,8 +40,19 @@ public class ResourceSyncRequestHandler extends JythonBasedRequestHandler
     protected void setVariables(IRequestHandlerPluginScriptRunner runner, SessionContextDTO session)
     {
         super.setVariables(runner, session);
-        String url = ServiceProvider.getConfigProvider().getOpenBisServerUrl() + properties.get("server-url");
+
+        String openBisUrl = ServiceProvider.getConfigProvider().getOpenBisServerUrl();
+        SslCertificateHelper.trustAnyCertificate(openBisUrl);
+        ICommonServer commonService =
+                HttpInvokerUtils.createServiceStub(ICommonServer.class, openBisUrl + "/openbis/rmi-common",
+                        5 * DateUtils.MILLIS_PER_MINUTE);
+
+        EncapsulatedCommonServer encapsulatedServer = EncapsulatedCommonServer.create(commonService, session.getSessionToken());
+        MasterDataRegistrationService service = new MasterDataRegistrationService(encapsulatedServer);
+        IMasterDataRegistrationTransaction masterDataRegistrationTransaction = service.transaction();
+
         runner.setVariable(V3_ENTITY_RETRIEVER_VARIABLE_NAME,
-                EntityRetriever.createWithSessionToken(ServiceProvider.getV3ApplicationService(), session.getSessionToken()));
+                EntityRetriever.createWithMasterDataRegistationTransaction(ServiceProvider.getV3ApplicationService(), session.getSessionToken(),
+                        masterDataRegistrationTransaction));
     }
 }
diff --git a/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/test/.gitignore b/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/test/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/EntityRetriever.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/EntityRetriever.java
index a52662844b1a9b199de8b4a4acff64b3589e06d5..dee08ffbb672160d20934189b871f5c5eab6140c 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/EntityRetriever.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/EntityRetriever.java
@@ -80,6 +80,8 @@ import ch.ethz.sis.openbis.generic.asapi.v3.dto.space.search.SpaceSearchCriteria
 import ch.ethz.sis.openbis.generic.shared.entitygraph.Edge;
 import ch.ethz.sis.openbis.generic.shared.entitygraph.EntityGraph;
 import ch.ethz.sis.openbis.generic.shared.entitygraph.Node;
+import ch.systemsx.cisd.openbis.generic.server.jython.api.v1.IMasterDataRegistrationTransaction;
+import ch.systemsx.cisd.openbis.generic.server.jython.api.v1.IPropertyTypeImmutable;
 
 public class EntityRetriever 
 {
@@ -87,19 +89,28 @@ public class EntityRetriever
 
     private final IApplicationServerApi v3Api;
 
+    private final IMasterDataRegistrationTransaction masterDataRegistrationTransaction;
+
     private final String sessionToken;
 
     private static final int TIMEOUT = 10000;
 
-    private EntityRetriever(IApplicationServerApi v3Api, String sessionToken)
+    private EntityRetriever(IApplicationServerApi v3Api, String sessionToken, IMasterDataRegistrationTransaction masterDataRegistrationTransaction)
     {
         this.v3Api = v3Api;
         this.sessionToken = sessionToken;
+        this.masterDataRegistrationTransaction = masterDataRegistrationTransaction;
     }
     
+    public static EntityRetriever createWithMasterDataRegistationTransaction(IApplicationServerApi v3Api, String sessionToken,
+            IMasterDataRegistrationTransaction masterDataRegistrationTransaction)
+    {
+        return new EntityRetriever(v3Api, sessionToken, masterDataRegistrationTransaction);
+    }
+
     public static EntityRetriever createWithSessionToken(IApplicationServerApi v3Api, String sessionToken)
     {
-        return new EntityRetriever(v3Api, sessionToken);
+        return new EntityRetriever(v3Api, sessionToken, null);
     }
 
     public EntityGraph<Node<?>> getEntityGraph(String spaceId)
@@ -557,12 +568,16 @@ public class EntityRetriever
         }
     }
 
+    public List<IPropertyTypeImmutable> listPropertyTypes()
+    {
+        return masterDataRegistrationTransaction.listPropertyTypes();
+    }
+
     private List<DataSetType> getDataSetTypes()
     {
         DataSetTypeSearchCriteria searchCriteria = new DataSetTypeSearchCriteria();
         DataSetTypeFetchOptions fetchOptions = new DataSetTypeFetchOptions();
         fetchOptions.withPropertyAssignments().withPropertyType().withVocabulary();
-        // withPropertyAssignments.withPropertyType();
 
         SearchResult<DataSetType> searchResult = v3Api.searchDataSetTypes(sessionToken, searchCriteria, fetchOptions);
         return searchResult.getObjects();