diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/filter/FilterSelectionWidget.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/filter/FilterSelectionWidget.java
index 5b18089eb88f5ef32002c9157a7e6f6857824d3c..b642bc88fb6e2c9120357bceee274a09b50e7794 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/filter/FilterSelectionWidget.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/filter/FilterSelectionWidget.java
@@ -39,6 +39,8 @@ import ch.systemsx.cisd.openbis.generic.shared.basic.dto.DatabaseModificationKin
 public final class FilterSelectionWidget extends DropDownList<FilterModel, Filter> implements
         IDelegatedAction
 {
+    private static final String LIST_ITEMS_CALLBACK = "ListItemsCallback";
+
     public static final String SUFFIX = "filter";
 
     private final IViewContext<?> viewContext;
@@ -56,6 +58,12 @@ public final class FilterSelectionWidget extends DropDownList<FilterModel, Filte
         this.displayTypeIDProvider = displayTypeIDProvider;
         this.withStandard = true;
         setAutoSelectFirst(withStandard);
+        setCallbackId(createCallbackId());
+    }
+
+    public static String createCallbackId()
+    {
+        return FilterSelectionWidget.class + LIST_ITEMS_CALLBACK;
     }
 
     @Override
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/widget/DropDownList.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/widget/DropDownList.java
index f030cfd7d7bd4a03c96ed9d1f8fcfca0dbaeb350..e2970aa818d1b616f1de05f54ddce4c5c7609789 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/widget/DropDownList.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/widget/DropDownList.java
@@ -68,6 +68,8 @@ abstract public class DropDownList<M extends ModelData, E> extends ComboBox<M> i
 
     private final IViewContext<?> viewContextOrNull;
 
+    public String callbackIdOrNull;
+
     public DropDownList(final IViewContext<?> viewContext, String idSuffix, String labelDictCode,
             String displayField, String chooseSuffix, String nothingFoundSuffix)
     {
@@ -99,6 +101,11 @@ abstract public class DropDownList<M extends ModelData, E> extends ComboBox<M> i
         setStore(new ListStore<M>());
     }
 
+    protected void setCallbackId(String callbackId)
+    {
+        this.callbackIdOrNull = callbackId;
+    }
+
     private static String createId(String idSuffix)
     {
         return ID + idSuffix;
@@ -182,6 +189,18 @@ abstract public class DropDownList<M extends ModelData, E> extends ComboBox<M> i
             updateStore(convertedItems);
         }
 
+        @Override
+        public String getCallbackId()
+        {
+            if (callbackIdOrNull != null)
+            {
+                return callbackIdOrNull;
+            } else
+            {
+                return super.getCallbackId();
+            }
+        }
+
     }
 
     protected final void updateStore(final List<M> models)
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/AuthorizationManagementConsolTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/AuthorizationManagementConsolTest.java
index 3af4590bd0a3d3d3042c63a9ce8761a22d1d655f..5dae7b713a47fc6a490077f7ebd57da927e47b73 100644
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/AuthorizationManagementConsolTest.java
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/AuthorizationManagementConsolTest.java
@@ -29,7 +29,6 @@ import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.amc.Ope
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.amc.RoleAssignmentRow;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.columns.specific.GroupColDefKind;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.columns.specific.PersonColDefKind;
-import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.filter.FilterSelectionWidget;
 import ch.systemsx.cisd.openbis.generic.client.web.client.testframework.AbstractGWTTestCase;
 import ch.systemsx.cisd.openbis.generic.client.web.client.testframework.FailureExpectation;
 import ch.systemsx.cisd.openbis.generic.client.web.client.testframework.Row;
@@ -54,8 +53,6 @@ public class AuthorizationManagementConsolTest extends AbstractGWTTestCase
         loginAndInvokeAction(ActionMenuKind.ADMINISTRATION_MENU_MANAGE_GROUPS);
 
         CreateGroup createGroupCommand = new CreateGroup(groupCode);
-        createGroupCommand.addCallbackClass(FilterSelectionWidget.ListItemsCallback.class);
-        // fix?
         remoteConsole.prepare(createGroupCommand);
         final CheckGroupTable table = new CheckGroupTable();
         table.addCallbackClass(AddGroupDialog.SaveDialogCallback.class);
@@ -72,7 +69,6 @@ public class AuthorizationManagementConsolTest extends AbstractGWTTestCase
         loginAndInvokeAction(ActionMenuKind.AUTHORIZATION_MENU_USERS);
 
         CreatePerson command = new CreatePerson(userId);
-        command.addCallbackClass(FilterSelectionWidget.ListItemsCallback.class);
         remoteConsole.prepare(command);
         final CheckPersonTable table = new CheckPersonTable();
         table.addCallbackClass(AddPersonDialog.SaveDialogCallback.class);
@@ -121,7 +117,6 @@ public class AuthorizationManagementConsolTest extends AbstractGWTTestCase
         loginAndInvokeAction("o", "o", ActionMenuKind.AUTHORIZATION_MENU_USERS);
         final String userId = "u";
         CreatePerson command = new CreatePerson(userId);
-        command.addCallbackClass(FilterSelectionWidget.ListItemsCallback.class);
         remoteConsole.prepare(command);
         FailureExpectation failureExpectation =
                 new FailureExpectation(AddPersonDialog.SaveDialogCallback.class)
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/FileFormatTypeGridTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/FileFormatTypeGridTest.java
index 56c12173ca663d4c4ed61c6dc7b95ea8d1b4e36d..33187361dfd2f8cef47e6d0dfe751a43de97652f 100644
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/FileFormatTypeGridTest.java
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/FileFormatTypeGridTest.java
@@ -25,7 +25,6 @@ import ch.systemsx.cisd.openbis.generic.client.web.client.application.menu.TopMe
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.columns.specific.TypeColDefKind;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.data.FileFormatTypeGrid;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.entity_type.AddTypeDialog;
-import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.filter.FilterSelectionWidget;
 import ch.systemsx.cisd.openbis.generic.client.web.client.testframework.AbstractDefaultTestCommand;
 import ch.systemsx.cisd.openbis.generic.client.web.client.testframework.AbstractGWTTestCase;
 import ch.systemsx.cisd.openbis.generic.client.web.client.testframework.CheckTableCommand;
@@ -52,7 +51,6 @@ public class FileFormatTypeGridTest extends AbstractGWTTestCase
     {
         loginAndInvokeAction(ActionMenuKind.DATA_SET_MENU_FILE_FORMATS);
         CheckTableCommand table = new CheckTableCommand(FileFormatTypeGrid.GRID_ID);
-        table.addCallbackClass(FilterSelectionWidget.ListItemsCallback.class);
         table.expectedSize(8);
         remoteConsole.prepare(new PiggyBackCommand(table, addNewTypeCommand()));
         table = new CheckTableCommand(FileFormatTypeGrid.GRID_ID);
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/amc/OpenRoleAssignmentDialog.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/amc/OpenRoleAssignmentDialog.java
index 29457b51e903cdf0c35c42164a2d5bebe9b01467..09963646ea499b109f5964707a517168762b926f 100644
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/amc/OpenRoleAssignmentDialog.java
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/amc/OpenRoleAssignmentDialog.java
@@ -18,7 +18,6 @@ package ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.amc;
 
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.MainTabPanel;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.RoleAssignmentGrid;
-import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.filter.FilterSelectionWidget;
 import ch.systemsx.cisd.openbis.generic.client.web.client.testframework.AbstractDefaultTestCommand;
 import ch.systemsx.cisd.openbis.generic.client.web.client.testframework.CheckTableCommand;
 import ch.systemsx.cisd.openbis.generic.client.web.client.testframework.GWTTestUtil;
@@ -34,7 +33,6 @@ public final class OpenRoleAssignmentDialog extends CheckTableCommand
     public OpenRoleAssignmentDialog()
     {
         super(RoleAssignmentGrid.GRID_ID);
-        addCallbackClass(FilterSelectionWidget.ListItemsCallback.class);
     }
 
     @Override
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/experiment/ListExperiments.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/experiment/ListExperiments.java
index 97257be8fc88e3bb7f25d214fd3e288941213425..7c56bbbc3d70f9dcde4f3b5f26b5a82cd7145c89 100644
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/experiment/ListExperiments.java
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/experiment/ListExperiments.java
@@ -21,7 +21,6 @@ import com.google.gwt.user.client.rpc.AsyncCallback;
 
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.model.ExperimentTypeModel;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.model.ModelDataPropertyNames;
-import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.filter.FilterSelectionWidget;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.util.GWTUtils;
 import ch.systemsx.cisd.openbis.generic.client.web.client.testframework.AbstractDefaultTestCommand;
 import ch.systemsx.cisd.openbis.generic.client.web.client.testframework.GWTTestUtil;
@@ -56,7 +55,6 @@ public class ListExperiments extends AbstractDefaultTestCommand
             addCallbackClass(ProjectSelectionTreeWidget.ListProjectsCallback.class);
             addCallbackClass(ExperimentTypeSelectionWidget.ListItemsCallback.class);
         }
-        addCallbackClass(FilterSelectionWidget.ListItemsCallback.class);
     }
 
     //
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/material/ListMaterials.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/material/ListMaterials.java
index 4fb803f9bd48790364b18d40f2dca8469d9ea904..9d28efd0df2521450c83fa441cd6dda09db1491a 100644
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/material/ListMaterials.java
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/material/ListMaterials.java
@@ -20,7 +20,6 @@ import com.extjs.gxt.ui.client.widget.form.ComboBox;
 
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.model.MaterialTypeModel;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.model.ModelDataPropertyNames;
-import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.filter.FilterSelectionWidget;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.util.GWTUtils;
 import ch.systemsx.cisd.openbis.generic.client.web.client.testframework.AbstractDefaultTestCommand;
 import ch.systemsx.cisd.openbis.generic.client.web.client.testframework.GWTTestUtil;
@@ -37,7 +36,6 @@ public class ListMaterials extends AbstractDefaultTestCommand
     public ListMaterials(final String materialTypeNameOrNull)
     {
         this.materialTypeName = materialTypeNameOrNull;
-        addCallbackClass(FilterSelectionWidget.ListItemsCallback.class);
         addCallbackClass(MaterialTypeSelectionWidget.ListItemsCallback.class);
     }