diff --git a/installation/source/java/ch/systemsx/cisd/openbis/installer/izpack/ExecuteSetupScriptsAction.java b/installation/source/java/ch/systemsx/cisd/openbis/installer/izpack/ExecuteSetupScriptsAction.java
index cf7c25e338a2f71112f28df6d3babc80b73afcfa..08a92941655d568cad475e3b628111e64e480825 100644
--- a/installation/source/java/ch/systemsx/cisd/openbis/installer/izpack/ExecuteSetupScriptsAction.java
+++ b/installation/source/java/ch/systemsx/cisd/openbis/installer/izpack/ExecuteSetupScriptsAction.java
@@ -53,6 +53,7 @@ public class ExecuteSetupScriptsAction extends AbstractScriptExecutor implements
     
     private final String[] KEYS = {DATA_SOURCES_KEY, POST_REGISTRATION_TASKS_KEY, MAINTENANCE_PLUGINS_KEY, PROCESSING_PLUGINS_KEY};
     private final String[] TERMS = {PATHINFO_DB_DATA_SOURCE, PATHINFO_DB_FEEDING_TASK, PATHINFO_DB_DELETION_TASK, PATHINFO_DB_CHECK};
+    private final String[] CLASS_POSTFIX = {"version-holder-class", "class", "class", "class" };
 
     /**
      * executed for first time installations.
@@ -123,7 +124,21 @@ public class ExecuteSetupScriptsAction extends AbstractScriptExecutor implements
         {
             for (int i = 0; i < KEYS.length; i++)
             {
-                Utils.addTermToPropertyList(dssServicePropertiesFile, KEYS[i], TERMS[i]);
+                String key = KEYS[i];
+                String newTerm = TERMS[i];
+                String classProperty = newTerm + "." + CLASS_POSTFIX[i];
+                int indexOfDot = key.indexOf('.');
+                if (indexOfDot >= 0)
+                {
+                    classProperty = key.substring(0, indexOfDot) + "." + classProperty;
+                }
+                String className =
+                        Utils.tryToGetProperties(dssServicePropertiesFile).getProperty(
+                                classProperty);
+                if (className != null)
+                {
+                    Utils.addTermToPropertyList(dssServicePropertiesFile, key, newTerm);
+                }
             }
         } else
         {
diff --git a/installation/sourceTest/java/ch/systemsx/cisd/openbis/installer/izpack/ExecuteSetupScriptsActionTest.java b/installation/sourceTest/java/ch/systemsx/cisd/openbis/installer/izpack/ExecuteSetupScriptsActionTest.java
index 26c29142a9d4e4ab2e4a6cd9aa1e813a3a29369c..ae8442326ad2dde167b0c93977e304c91d310762 100644
--- a/installation/sourceTest/java/ch/systemsx/cisd/openbis/installer/izpack/ExecuteSetupScriptsActionTest.java
+++ b/installation/sourceTest/java/ch/systemsx/cisd/openbis/installer/izpack/ExecuteSetupScriptsActionTest.java
@@ -92,19 +92,21 @@ public class ExecuteSetupScriptsActionTest extends AbstractFileSystemTestCase
                 properties.getProperty(ExecuteSetupScriptsAction.POST_REGISTRATION_TASKS_KEY));
         assertEquals("post-registration, " + ExecuteSetupScriptsAction.PATHINFO_DB_DELETION_TASK,
                 properties.getProperty(ExecuteSetupScriptsAction.MAINTENANCE_PLUGINS_KEY));
-        
+        assertEquals(ExecuteSetupScriptsAction.PATHINFO_DB_CHECK,
+                properties.getProperty(ExecuteSetupScriptsAction.PROCESSING_PLUGINS_KEY));
+
         action.enablePathinfoDB(false, workingDirectory);
 
         properties = loadProperties(dssServicePropertiesFile);
-        assertEquals("",
-                properties.getProperty(ExecuteSetupScriptsAction.DATA_SOURCES_KEY));
+        assertEquals("", properties.getProperty(ExecuteSetupScriptsAction.DATA_SOURCES_KEY));
         assertEquals("",
                 properties.getProperty(ExecuteSetupScriptsAction.POST_REGISTRATION_TASKS_KEY));
         assertEquals("post-registration",
                 properties.getProperty(ExecuteSetupScriptsAction.MAINTENANCE_PLUGINS_KEY));
-        
+        assertEquals("", properties.getProperty(ExecuteSetupScriptsAction.PROCESSING_PLUGINS_KEY));
+
         action.enablePathinfoDB(true, workingDirectory);
-        
+
         properties = loadProperties(dssServicePropertiesFile);
         assertEquals(ExecuteSetupScriptsAction.PATHINFO_DB_DATA_SOURCE,
                 properties.getProperty(ExecuteSetupScriptsAction.DATA_SOURCES_KEY));
@@ -112,7 +114,35 @@ public class ExecuteSetupScriptsActionTest extends AbstractFileSystemTestCase
                 properties.getProperty(ExecuteSetupScriptsAction.POST_REGISTRATION_TASKS_KEY));
         assertEquals("post-registration, " + ExecuteSetupScriptsAction.PATHINFO_DB_DELETION_TASK,
                 properties.getProperty(ExecuteSetupScriptsAction.MAINTENANCE_PLUGINS_KEY));
-}
+        assertEquals(ExecuteSetupScriptsAction.PATHINFO_DB_CHECK,
+                properties.getProperty(ExecuteSetupScriptsAction.PROCESSING_PLUGINS_KEY));
+    }
+
+    @Test
+    public void testDisableAndEnablePathinfoDBNotDefinedInServiceProperties() throws Exception
+    {
+        FileUtilities.writeToFile(dssServicePropertiesFile, "");
+        
+        action.enablePathinfoDB(false, workingDirectory);
+        
+        Properties properties = loadProperties(dssServicePropertiesFile);
+        assertEquals("", properties.getProperty(ExecuteSetupScriptsAction.DATA_SOURCES_KEY));
+        assertEquals("",
+                properties.getProperty(ExecuteSetupScriptsAction.POST_REGISTRATION_TASKS_KEY));
+        assertEquals("",
+                properties.getProperty(ExecuteSetupScriptsAction.MAINTENANCE_PLUGINS_KEY));
+        assertEquals("", properties.getProperty(ExecuteSetupScriptsAction.PROCESSING_PLUGINS_KEY));
+        
+        action.enablePathinfoDB(true, workingDirectory);
+        
+        properties = loadProperties(dssServicePropertiesFile);
+        assertEquals("", properties.getProperty(ExecuteSetupScriptsAction.DATA_SOURCES_KEY));
+        assertEquals("",
+                properties.getProperty(ExecuteSetupScriptsAction.POST_REGISTRATION_TASKS_KEY));
+        assertEquals("",
+                properties.getProperty(ExecuteSetupScriptsAction.MAINTENANCE_PLUGINS_KEY));
+        assertEquals("", properties.getProperty(ExecuteSetupScriptsAction.PROCESSING_PLUGINS_KEY));
+    }
     
     @Test
     public void testEnableAlreadyEnabledPathinfoDB() throws Exception