diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/filter/FilterToolbar.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/filter/FilterToolbar.java
index a9b88ee1b8f37f3ec8c253c104e0cc5aa7156d40..1164dbc003994bf889e5528954400cca785e67a9 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/filter/FilterToolbar.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/filter/FilterToolbar.java
@@ -165,25 +165,29 @@ public class FilterToolbar<T> extends ToolBar implements IDatabaseModificationOb
 
     private void updateFilterFields()
     {
-        filterContainer.removeAll();
         Filter filter = filterSelectionWidget.tryGetSelected();
-        if (isColumnFilterSelected())
+        if (filter != null)
         {
-            for (PagingColumnFilter<T> filterWidget : columnFilters)
+            filterContainer.removeAll();
+            if (isColumnFilterSelected())
             {
-                filterContainer.add(filterWidget);
-            }
-            applyTool.hide();
-        } else
-        {
-            for (String parameter : filter.getParameters())
+                for (PagingColumnFilter<T> filterWidget : columnFilters)
+                {
+                    filterContainer.add(filterWidget);
+                }
+                applyTool.hide();
+            } else
             {
-                filterContainer.add(new CustomFilterParameterWidget(parameter));
+                for (String parameter : filter.getParameters())
+                {
+                    filterContainer.add(new CustomFilterParameterWidget(parameter));
+                }
+                applyTool.show();
+                updateApplyToolEnabledState();
             }
-            applyTool.show();
-            updateApplyToolEnabledState();
+            // don't show reset button if there are no fields to reset
+            resetTool.setVisible(filterContainer.getItemCount() > 0);
         }
-        resetTool.setVisible(filterContainer.getItemCount() > 0);
     }
 
     @SuppressWarnings("unchecked")
@@ -194,7 +198,9 @@ public class FilterToolbar<T> extends ToolBar implements IDatabaseModificationOb
             if (field instanceof Field)
             {
                 Field f = (Field) field;
-                f.reset();
+                // Simple 'f.reset()' causes automatic filter application,
+                // but we want to reload data only once after all filters are cleared.
+                f.setRawValue("");
             }
         }
     }