diff --git a/converter-CellDesigner/pom.xml b/converter-CellDesigner/pom.xml
index 6c63f5a7683f4c19af8f8fb9acfa4e26babc9de4..733ba83e10bec191fdc6cf03a7ec210759d02976 100644
--- a/converter-CellDesigner/pom.xml
+++ b/converter-CellDesigner/pom.xml
@@ -67,6 +67,13 @@
 			<scope>compile</scope>
 		</dependency>
 
+		<!-- https://mvnrepository.com/artifact/org.springframework/spring-context -->
+		<dependency>
+			<groupId>org.springframework</groupId>
+			<artifactId>spring-context</artifactId>
+			<version>${springframework.version}</version>
+		</dependency>
+
 	</dependencies>
 
 </project>
\ No newline at end of file
diff --git a/converter-CellDesigner/src/main/java/lcsb/mapviewer/converter/model/celldesigner/CellDesignerXmlParser.java b/converter-CellDesigner/src/main/java/lcsb/mapviewer/converter/model/celldesigner/CellDesignerXmlParser.java
index c6386575d66324c51057c8837de764cddd3d11d8..34aaa538dc4da97460c25497de82897e2efa8379 100644
--- a/converter-CellDesigner/src/main/java/lcsb/mapviewer/converter/model/celldesigner/CellDesignerXmlParser.java
+++ b/converter-CellDesigner/src/main/java/lcsb/mapviewer/converter/model/celldesigner/CellDesignerXmlParser.java
@@ -11,6 +11,7 @@ import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
 import org.apache.logging.log4j.core.LogEvent;
 import org.apache.xerces.parsers.DOMParser;
+import org.springframework.stereotype.Component;
 import org.w3c.dom.*;
 
 import lcsb.mapviewer.common.*;
@@ -55,6 +56,7 @@ import lcsb.mapviewer.model.map.species.Element;
  * @author Piotr Gawron
  * 
  */
+@Component
 public class CellDesignerXmlParser extends Converter {
 
   /**
diff --git a/converter-SBGNML/src/main/java/lcsb/mapviewer/converter/model/sbgnml/SbgnmlXmlConverter.java b/converter-SBGNML/src/main/java/lcsb/mapviewer/converter/model/sbgnml/SbgnmlXmlConverter.java
index 95ed20c1231cbc99cecb006e58f324b4cc3c8d0d..892dab8549a8c6bb5900b0b5ef8a12a2bf776702 100644
--- a/converter-SBGNML/src/main/java/lcsb/mapviewer/converter/model/sbgnml/SbgnmlXmlConverter.java
+++ b/converter-SBGNML/src/main/java/lcsb/mapviewer/converter/model/sbgnml/SbgnmlXmlConverter.java
@@ -9,12 +9,14 @@ import org.apache.commons.text.StringEscapeUtils;
 import org.apache.logging.log4j.core.LogEvent;
 import org.sbgn.SbgnUtil;
 import org.sbgn.bindings.Sbgn;
+import org.springframework.stereotype.Component;
 
 import lcsb.mapviewer.common.MimeType;
 import lcsb.mapviewer.common.MinervaLoggerAppender;
 import lcsb.mapviewer.converter.*;
 import lcsb.mapviewer.model.map.model.Model;
 
+@Component
 public class SbgnmlXmlConverter extends Converter {
 
   @Override
diff --git a/converter-sbml/src/main/java/lcsb/mapviewer/converter/model/sbml/SbmlParser.java b/converter-sbml/src/main/java/lcsb/mapviewer/converter/model/sbml/SbmlParser.java
index 1e47dc8e3b0763adfa23f41bf262a4d664eece88..9e0bd55f28c1da9496b0669925471697d91c29ea 100644
--- a/converter-sbml/src/main/java/lcsb/mapviewer/converter/model/sbml/SbmlParser.java
+++ b/converter-sbml/src/main/java/lcsb/mapviewer/converter/model/sbml/SbmlParser.java
@@ -13,6 +13,7 @@ import org.sbml.jsbml.ext.SBasePlugin;
 import org.sbml.jsbml.ext.layout.Layout;
 import org.sbml.jsbml.ext.layout.LayoutModelPlugin;
 import org.sbml.jsbml.ext.multi.MultiModelPlugin;
+import org.springframework.stereotype.Component;
 
 import lcsb.mapviewer.commands.CommandExecutionException;
 import lcsb.mapviewer.commands.layout.ApplySimpleLayoutModelCommand;
@@ -33,6 +34,7 @@ import lcsb.mapviewer.model.map.species.*;
 import lcsb.mapviewer.model.map.species.field.ModificationResidue;
 import lcsb.mapviewer.model.map.species.field.SpeciesWithModificationResidue;
 
+@Component
 public class SbmlParser extends Converter {
 
   /**
diff --git a/pathvisio/src/main/java/lcsb/mapviewer/wikipathway/GpmlParser.java b/pathvisio/src/main/java/lcsb/mapviewer/wikipathway/GpmlParser.java
index 964b5e026f8f15c35b2501cb2b6436ecddb753e6..796d4a006eb3dff90a82508037b8d1b981ca0143 100644
--- a/pathvisio/src/main/java/lcsb/mapviewer/wikipathway/GpmlParser.java
+++ b/pathvisio/src/main/java/lcsb/mapviewer/wikipathway/GpmlParser.java
@@ -5,6 +5,7 @@ import java.io.IOException;
 
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
+import org.springframework.stereotype.Component;
 
 import lcsb.mapviewer.common.MimeType;
 import lcsb.mapviewer.converter.*;
@@ -13,6 +14,7 @@ import lcsb.mapviewer.model.map.model.Model;
 import lcsb.mapviewer.wikipathway.XML.GPMLToModel;
 import lcsb.mapviewer.wikipathway.XML.ModelToGPML;
 
+@Component
 public class GpmlParser extends Converter {
   Logger logger = LogManager.getLogger();
 
diff --git a/rest-api/src/main/java/lcsb/mapviewer/api/BaseRestImpl.java b/rest-api/src/main/java/lcsb/mapviewer/api/BaseRestImpl.java
index ec0ab44c31ef70f6aae9592fc7a2df97475cc2da..5ab4674620e75aa3225032ac375ad9e410ba9b4f 100644
--- a/rest-api/src/main/java/lcsb/mapviewer/api/BaseRestImpl.java
+++ b/rest-api/src/main/java/lcsb/mapviewer/api/BaseRestImpl.java
@@ -23,9 +23,6 @@ import lcsb.mapviewer.annotation.services.*;
 import lcsb.mapviewer.common.comparator.StringComparator;
 import lcsb.mapviewer.common.exception.*;
 import lcsb.mapviewer.converter.Converter;
-import lcsb.mapviewer.converter.model.celldesigner.CellDesignerXmlParser;
-import lcsb.mapviewer.converter.model.sbgnml.SbgnmlXmlConverter;
-import lcsb.mapviewer.converter.model.sbml.SbmlParser;
 import lcsb.mapviewer.model.map.*;
 import lcsb.mapviewer.model.map.model.Model;
 import lcsb.mapviewer.model.map.reaction.Reaction;
@@ -33,7 +30,6 @@ import lcsb.mapviewer.model.map.species.Element;
 import lcsb.mapviewer.model.user.annotator.*;
 import lcsb.mapviewer.services.interfaces.*;
 import lcsb.mapviewer.services.search.ElementMatcher;
-import lcsb.mapviewer.wikipathway.GpmlParser;
 
 @Transactional
 public abstract class BaseRestImpl {
@@ -61,6 +57,9 @@ public abstract class BaseRestImpl {
   @Autowired
   private PubmedParser pubmedParser;
 
+  @Autowired
+  private List<Converter> modelConverters;
+
   private ElementMatcher elementMatcher = new ElementMatcher();
 
   private Transformer mathMlTransformer;
@@ -162,7 +161,7 @@ public abstract class BaseRestImpl {
    * @param modelId
    *          list of model identifiers separated by "," or '*' when all models
    *          should be returned
-   * @throws QueryException 
+   * @throws QueryException
    */
   protected List<Model> getModels(String projectId, String modelId) throws QueryException {
     Model model = modelService.getLastModelByProjectId(projectId);
@@ -319,12 +318,7 @@ public abstract class BaseRestImpl {
   }
 
   protected List<Converter> getModelConverters() {
-    List<Converter> result = new ArrayList<>();
-    result.add(new CellDesignerXmlParser());
-    result.add(new SbgnmlXmlConverter());
-    result.add(new SbmlParser());
-    result.add(new GpmlParser());
-    return result;
+    return modelConverters;
   }
 
   protected String getFirstValue(List<Object> list) {
diff --git a/rest-api/src/main/java/lcsb/mapviewer/api/SpringRestApiConfig.java b/rest-api/src/main/java/lcsb/mapviewer/api/SpringRestApiConfig.java
index 28365629698bf7a2625b0cefd7899d2d3cde31cb..57b92597b0c411165ef847f29e13de0a0f0856fa 100644
--- a/rest-api/src/main/java/lcsb/mapviewer/api/SpringRestApiConfig.java
+++ b/rest-api/src/main/java/lcsb/mapviewer/api/SpringRestApiConfig.java
@@ -8,7 +8,7 @@ import lcsb.mapviewer.services.SpringServiceConfig;
 @Configuration
 @EnableWebMvc
 @Import({ SpringServiceConfig.class })
-@ComponentScan(basePackages = { "lcsb.mapviewer.api" })
+@ComponentScan(basePackages = { "lcsb.mapviewer" })
 public class SpringRestApiConfig {
 
 }
diff --git a/rest-api/src/test/java/lcsb/mapviewer/api/BaseRestImplTest.java b/rest-api/src/test/java/lcsb/mapviewer/api/BaseRestImplTest.java
index 77e415ea34e49fd29215be138e0ad97e0e2fc4ba..84d9f956a0b7e8aa72e65fbc4de242593ce407b0 100644
--- a/rest-api/src/test/java/lcsb/mapviewer/api/BaseRestImplTest.java
+++ b/rest-api/src/test/java/lcsb/mapviewer/api/BaseRestImplTest.java
@@ -15,16 +15,21 @@ import org.springframework.beans.factory.annotation.Autowired;
 import lcsb.mapviewer.annotation.services.MiriamConnector;
 import lcsb.mapviewer.annotation.services.PubmedParser;
 import lcsb.mapviewer.annotation.services.annotators.ElementAnnotator;
+import lcsb.mapviewer.api.projects.ProjectRestImpl;
+import lcsb.mapviewer.converter.Converter;
 import lcsb.mapviewer.model.map.MiriamData;
 import lcsb.mapviewer.model.map.MiriamType;
 import lcsb.mapviewer.model.user.annotator.AnnotatorData;
 
 public class BaseRestImplTest extends RestTestFunctions {
-  Logger logger = LogManager.getLogger(BaseRestImplTest.class);
+  Logger logger = LogManager.getLogger();
 
   @Autowired
   MiriamConnector mc;
 
+  @Autowired
+  ProjectRestImpl restImpl;
+
   @Autowired
   PubmedParser pubmedParser;
 
@@ -107,4 +112,11 @@ public class BaseRestImplTest extends RestTestFunctions {
     Integer x = controller.parseInteger(null);
     assertNull(x);
   }
+
+  @Test
+  public void testGetConverters() throws Exception {
+    List<Converter> list = restImpl.getModelConverters();
+    assertTrue(list.size() > 0);
+  }
+
 }