diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/api/v1/DataSetFileDTO.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/api/v1/DataSetFileDTO.java
index bb3d827403f63171b2f21cd841af893002c0079e..83bb7eb115ed1361d3ca4c67a4e6fe22e72d71a1 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/api/v1/DataSetFileDTO.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/api/v1/DataSetFileDTO.java
@@ -21,6 +21,8 @@ import java.io.Serializable;
 import org.apache.commons.lang.builder.ToStringBuilder;
 import org.apache.commons.lang.builder.ToStringStyle;
 
+import com.fasterxml.jackson.annotation.JsonProperty;
+
 import ch.systemsx.cisd.base.annotation.JsonObject;
 
 /**
@@ -28,16 +30,17 @@ import ch.systemsx.cisd.base.annotation.JsonObject;
  * 
  * @author Chandrasekhar Ramakrishnan
  */
+@SuppressWarnings("unused")
 @JsonObject("DataSetFileDTO")
 public class DataSetFileDTO implements Serializable
 {
     private static final long serialVersionUID = 1L;
 
-    private final String dataSetCode;
+    private String dataSetCode;
 
-    private final String path;
+    private String path;
 
-    private final boolean isRecursive;
+    private boolean isRecursive;
 
     public DataSetFileDTO(String dataSetCode, String path, boolean isRecursive)
     {
@@ -59,6 +62,7 @@ public class DataSetFileDTO implements Serializable
     }
 
     /** If true, this object includes sub folders */
+    @JsonProperty("isRecursive")
     public boolean isRecursive()
     {
         return isRecursive;
@@ -76,4 +80,28 @@ public class DataSetFileDTO implements Serializable
         }
         return sb.toString();
     }
+
+    //
+    // JSON-RPC
+    //
+
+    private DataSetFileDTO()
+    {
+    }
+
+    private void setDataSetCode(String dataSetCode)
+    {
+        this.dataSetCode = dataSetCode;
+    }
+
+    private void setPath(String path)
+    {
+        this.path = path;
+    }
+
+    private void setIsRecursive(boolean isRecursive)
+    {
+        this.isRecursive = isRecursive;
+    }
+
 }
diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/api/v1/FileInfoDssDTO.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/api/v1/FileInfoDssDTO.java
index c4af290634239661e81c2a407f35c31672f6ea33..49eeac4544ae0fe225ee2e6b3c217db22168069a 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/api/v1/FileInfoDssDTO.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/api/v1/FileInfoDssDTO.java
@@ -103,6 +103,7 @@ public class FileInfoDssDTO implements Serializable
      * Note that the checksum will only be available when it is precomputed and available from some
      * sort of database, i.e. if it is computationally "cheap" to provide the checksum.
      */
+    @JsonProperty("crc32Checksum")
     public Integer tryGetCrc32Checksum()
     {
         return crc32Checksum;
diff --git a/datastore_server/source/java/dssApplicationContext.xml b/datastore_server/source/java/dssApplicationContext.xml
index 5b7bc4792b91635e2150abc3367ad75dee029064..9448dfe390c02c87f08ee2accee380fb3be86789 100644
--- a/datastore_server/source/java/dssApplicationContext.xml
+++ b/datastore_server/source/java/dssApplicationContext.xml
@@ -164,6 +164,9 @@
         <constructor-arg ref="config-provider" />
     </bean>
 
+    <bean id="objectMapper" class="ch.systemsx.cisd.openbis.generic.shared.api.json.GenericObjectMapper">
+    </bean>
+
     <!-- 
         // This discovers on-the-fly all <code>org.springframework.aop.Advisor</code> implementations.
     -->