diff --git a/docker/README.md b/docker/README.md
index 419dd079818055f01a0e70f781e42d5221d80268..33262bddeb289cca0a33a980fcd462b8e3fc4d9b 100644
--- a/docker/README.md
+++ b/docker/README.md
@@ -24,6 +24,7 @@ To use this image, you need a running instance of PostgreSQL and to configure th
 * FEATURES_DB_USER: User to use when connecting to the science database, default value is "postgres".
 * FEATURES_DB_PASSWORD: Password to use when connecting to the science database.
 * FEATURES_DB_MAIN_TABLE: Table that contains the scientific data to use, default value is "features".
+* DATASETS (temporary hack): list of datasets available in the features table
 
 
 ### OAUTH2 LOGIN
diff --git a/docker/config/application.tmpl b/docker/config/application.tmpl
index 16a901f6b08c45917d5764a813c78a91a7952f69..3be9dac65d1d9940ec57301c9a42bd6a29b92925 100644
--- a/docker/config/application.tmpl
+++ b/docker/config/application.tmpl
@@ -21,6 +21,7 @@ spring:
       username: {{ default .Env.FEATURES_DB_USER "postgres" }}
       password: {{ .Env.FEATURES_DB_PASSWORD }}
       driver-class-name: org.postgresql.Driver
+      datasets: {{ .Env.DATASETS }}
   jpa:
     hibernate:
       dialect: org.hibernate.dialect.PostgreSQL9Dialect
diff --git a/src/main/java/eu/hbp/mip/configuration/PersistenceConfiguration.java b/src/main/java/eu/hbp/mip/configuration/PersistenceConfiguration.java
index eb783e67547dd34fd65aa17c95d894c6af4f2c51..9efcec064fe110f81e27429042ed7f28c5ba3485 100644
--- a/src/main/java/eu/hbp/mip/configuration/PersistenceConfiguration.java
+++ b/src/main/java/eu/hbp/mip/configuration/PersistenceConfiguration.java
@@ -16,6 +16,7 @@ import org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean;
 import org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter;
 
 import javax.sql.DataSource;
+import java.util.List;
 
 /**
  * Created by mirco on 11.07.16.
diff --git a/src/main/java/eu/hbp/mip/controllers/DatasetsApi.java b/src/main/java/eu/hbp/mip/controllers/DatasetsApi.java
index 81d9e72e073e7b1bfb7b49bb5d476c271c5ab51e..446b3af003afb78e09e7455ed72c71c24f247ec6 100644
--- a/src/main/java/eu/hbp/mip/controllers/DatasetsApi.java
+++ b/src/main/java/eu/hbp/mip/controllers/DatasetsApi.java
@@ -6,19 +6,23 @@ package eu.hbp.mip.controllers;
 
 
 import com.google.gson.Gson;
-import com.google.gson.JsonArray;
-import com.google.gson.JsonObject;
 import eu.hbp.mip.model.Dataset;
+import eu.hbp.mip.model.Variable;
+import eu.hbp.mip.repositories.VariableRepository;
 import io.swagger.annotations.*;
 import eu.hbp.mip.repositories.DatasetRepository;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.http.ResponseEntity;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RestController;
 
+import javax.annotation.PostConstruct;
+
 import static org.springframework.http.MediaType.APPLICATION_JSON_VALUE;
 
 
@@ -33,25 +37,30 @@ public class DatasetsApi {
     @Autowired
     private DatasetRepository datasetRepository;
 
+    @Autowired
+    private VariableRepository variableRepository;
+
+    @Value("#{'${spring.featuresDatasource.datasets:adni,ppmi,edsd}'}")
+    private String datasets;
+
+    @PostConstruct
+    public void init() {
+        for (String dataset: datasets.split(",")) {
+            Variable v = variableRepository.findOne(dataset);
+            if (v == null) {
+                v = new Variable(dataset);
+                variableRepository.save(v);
+            }
+        }
+    }
+
     @ApiOperation(value = "Get dataset list", response = Dataset.class, responseContainer = "List")
     @RequestMapping(method = RequestMethod.GET)
     public ResponseEntity getDatasets(
     )  {
         LOGGER.info("Get dataset list");
 
-        JsonArray datasets = new JsonArray();
-
-        JsonObject o = new JsonObject();
-        o.addProperty("code",  "chuv");
-        o.addProperty("label",  "CHUV");
-        datasets.add(o);
-
-        JsonObject p = new JsonObject();
-        p.addProperty("code",  "brescia");
-        p.addProperty("label",  "Brescia");
-        datasets.add(p);
-
-        return ResponseEntity.ok(gson.toJson(datasets));
+        return ResponseEntity.ok(datasets.split(","));
     }
 
 }