diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ActionContext.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ActionContext.java
index b791ca04aa59d6ae04ae4f908388c849e02ed4c1..40738d32b374af1a7ea044d06582b84cf2826fe4 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ActionContext.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ActionContext.java
@@ -17,6 +17,7 @@
 package ch.systemsx.cisd.openbis.generic.client.web.client.application;
 
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Experiment;
+import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExperimentType;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Project;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.SampleType;
 
@@ -35,6 +36,8 @@ public class ActionContext
 
     private SampleType sampleTypeOrNull;
 
+    private ExperimentType experimentTypeOrNull;
+
     public ActionContext()
     {
     }
@@ -43,7 +46,6 @@ public class ActionContext
     {
         this.experimentOrNull = experiment;
         this.projectOrNull = experiment.getProject();
-        // this.spaceOrNull = projectOrNull.getSpace();
         this.spaceCodeOrNull = projectOrNull.getSpace().getCode();
     }
 
@@ -62,6 +64,11 @@ public class ActionContext
         return projectOrNull;
     }
 
+    public String tryGetProjectIdentifier()
+    {
+        return projectOrNull == null ? null : projectOrNull.getIdentifier();
+    }
+
     public void setProject(Project project)
     {
         this.projectOrNull = project;
@@ -74,7 +81,8 @@ public class ActionContext
 
     public String tryGetSampleTypeCode()
     {
-        return sampleTypeOrNull == null ? null : sampleTypeOrNull.getCode();
+        return (sampleTypeOrNull == null || sampleTypeOrNull.isAllTypesCode()) ? null
+                : sampleTypeOrNull.getCode();
     }
 
     public void setSampleType(SampleType sampleType)
@@ -82,6 +90,22 @@ public class ActionContext
         this.sampleTypeOrNull = sampleType;
     }
 
+    public ExperimentType tryGetExperimentType()
+    {
+        return experimentTypeOrNull;
+    }
+
+    public String tryGetExperimentTypeCode()
+    {
+        return (experimentTypeOrNull == null || experimentTypeOrNull.isAllTypesCode()) ? null
+                : experimentTypeOrNull.getCode();
+    }
+
+    public void setExperimentType(ExperimentType experimentType)
+    {
+        this.experimentTypeOrNull = experimentType;
+    }
+
     public String tryGetSpaceCode()
     {
         return spaceCodeOrNull;
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/framework/ComponentProvider.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/framework/ComponentProvider.java
index b6e09de5486637b2c935f8c5f88951fb6f016928..3e8961aa2dae1f6d6060e4e62bf335a4b8dd2bdc 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/framework/ComponentProvider.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/framework/ComponentProvider.java
@@ -19,9 +19,9 @@ package ch.systemsx.cisd.openbis.generic.client.web.client.application.framework
 import com.extjs.gxt.ui.client.widget.Component;
 
 import ch.systemsx.cisd.openbis.generic.client.web.client.ICommonClientServiceAsync;
+import ch.systemsx.cisd.openbis.generic.client.web.client.application.ActionContext;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.Dict;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.IViewContext;
-import ch.systemsx.cisd.openbis.generic.client.web.client.application.ActionContext;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.help.HelpPageIdentifier;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.help.HelpPageIdentifier.HelpPageAction;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.help.HelpPageIdentifier.HelpPageDomain;
@@ -297,7 +297,7 @@ public final class ComponentProvider
         return getSampleRegistration(new ActionContext());
     }
 
-    public final AbstractTabItemFactory getExperimentRegistration()
+    public final AbstractTabItemFactory getExperimentRegistration(final ActionContext context)
     {
         return new AbstractTabItemFactory()
             {
@@ -305,7 +305,7 @@ public final class ComponentProvider
                 public ITabItem create()
                 {
                     DatabaseModificationAwareComponent component =
-                            ExperimentRegistrationPanel.create(viewContext, new ActionContext());
+                            ExperimentRegistrationPanel.create(viewContext, context);
                     return createRegistrationTab(Dict.EXPERIMENT_REGISTRATION, component);
                 }
 
@@ -324,6 +324,11 @@ public final class ComponentProvider
             };
     }
 
+    public final AbstractTabItemFactory getExperimentRegistration()
+    {
+        return getExperimentRegistration(new ActionContext());
+    }
+
     public final AbstractTabItemFactory getSampleBatchRegistration()
     {
         final boolean update = false;
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/experiment/ExperimentBrowserGrid.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/experiment/ExperimentBrowserGrid.java
index a9f815e044efc23e520e3b66acbf54b2eebc0ef4..694cc521dafe33333c0aaf05a7997312c29b6f7e 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/experiment/ExperimentBrowserGrid.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/experiment/ExperimentBrowserGrid.java
@@ -28,6 +28,7 @@ import com.extjs.gxt.ui.client.widget.grid.GridCellRenderer;
 
 import ch.systemsx.cisd.openbis.generic.client.web.client.ICommonClientServiceAsync;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.AbstractAsyncCallback;
+import ch.systemsx.cisd.openbis.generic.client.web.client.application.ActionContext;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.Dict;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.GenericConstants;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.IViewContext;
@@ -58,6 +59,8 @@ import ch.systemsx.cisd.openbis.generic.shared.basic.dto.DatabaseModificationKin
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.EntityKind;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.EntityType;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Experiment;
+import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExperimentType;
+import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Project;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.DatabaseModificationKind.ObjectKind;
 
 /**
@@ -177,9 +180,9 @@ public class ExperimentBrowserGrid extends
                                 @Override
                                 public void componentSelected(ButtonEvent ce)
                                 {
-                                    DispatcherHelper.dispatchNaviEvent(new ComponentProvider(
-                                            viewContext).getExperimentRegistration());
+                                    openExperimentRegistrationTab();
                                 }
+
                             });
         addButton(addButton);
 
@@ -214,6 +217,21 @@ public class ExperimentBrowserGrid extends
         addEntityOperationsSeparator();
     }
 
+    private void openExperimentRegistrationTab()
+    {
+        final ActionContext context = new ActionContext();
+        ListExperimentsCriteria criteriaOrNull = getCriteriaProvider().tryGetCriteria();
+        if (criteriaOrNull != null)
+        {
+            final ExperimentType experimentType = criteriaOrNull.getExperimentType();
+            context.setExperimentType(experimentType);
+            final Project project = criteriaOrNull.getProject();
+            context.setProject(project);
+        }
+        DispatcherHelper.dispatchNaviEvent(new ComponentProvider(viewContext)
+                .getExperimentRegistration(context));
+    }
+
     private void addGridRefreshListener(ExperimentBrowserToolbar topToolbar)
     {
         topToolbar.setCriteriaChangedListeners(createGridRefreshDelegatedAction());
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/experiment/ExperimentBrowserToolbar.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/experiment/ExperimentBrowserToolbar.java
index 553bff0926272dadfefd6f5859994c2caa7dc31f..e8077437327ecac0e4e00d0374de70461bc93c7e 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/experiment/ExperimentBrowserToolbar.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/experiment/ExperimentBrowserToolbar.java
@@ -119,8 +119,7 @@ class ExperimentBrowserToolbar extends ToolBar implements
         }
         ListExperimentsCriteria criteria = new ListExperimentsCriteria();
         criteria.setExperimentType(selectedType);
-        criteria.setProjectCode(selectedProject.getCode());
-        criteria.setGroupCode(selectedProject.getSpace().getCode());
+        criteria.setProject(selectedProject);
         return criteria;
     }
 
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/experiment/ExperimentRegistrationPanel.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/experiment/ExperimentRegistrationPanel.java
index 27b218bad86e44cc76757aed1d6902105862aca6..c5e6b7dcb88ff6c0768294c0c61133e44c7d4a98 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/experiment/ExperimentRegistrationPanel.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/experiment/ExperimentRegistrationPanel.java
@@ -46,6 +46,7 @@ public final class ExperimentRegistrationPanel extends
             ActionContext context)
     {
         super(viewContext, EntityKind.EXPERIMENT, new ExperimentTypeSelectionWidget(viewContext,
-                EntityRegistrationPanel.createId(EntityKind.EXPERIMENT)), context);
+                EntityRegistrationPanel.createId(EntityKind.EXPERIMENT), context
+                        .tryGetExperimentTypeCode()), context);
     }
 }
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/experiment/ExperimentTypeSelectionWidget.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/experiment/ExperimentTypeSelectionWidget.java
index 232dbb3d0c84d2a974043891c2271aecdc55bbe1..ecb1d7f8c2bdd14312ccdea1f4fc27d2157805da 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/experiment/ExperimentTypeSelectionWidget.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/experiment/ExperimentTypeSelectionWidget.java
@@ -66,9 +66,9 @@ public final class ExperimentTypeSelectionWidget extends
     }
 
     public ExperimentTypeSelectionWidget(final IViewContext<ICommonClientServiceAsync> viewContext,
-            final String idSuffix)
+            final String idSuffix, final String initialCodeOrNull)
     {
-        this(viewContext, idSuffix, false, null);
+        this(viewContext, idSuffix, false, initialCodeOrNull);
     }
 
     /**
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/property_type/PropertyTypeAssignmentForm.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/property_type/PropertyTypeAssignmentForm.java
index fe667ebdaf8b661673240cce2548ef5f276d55d3..f73714d94217acfff950b46179cb836644c4f3f8 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/property_type/PropertyTypeAssignmentForm.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/property_type/PropertyTypeAssignmentForm.java
@@ -198,7 +198,7 @@ public final class PropertyTypeAssignmentForm extends LayoutContainer implements
                 {
                     experimentTypeSelectionWidget =
                             new ExperimentTypeSelectionWidget(viewContext,
-                                    EXPERIMENT_TYPE_ID_SUFFIX);
+                                    EXPERIMENT_TYPE_ID_SUFFIX, null);
                     created = true;
                 }
                 result = experimentTypeSelectionWidget;
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/sample/SampleBrowserGrid.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/sample/SampleBrowserGrid.java
index 28d984a2862cd284488458ca9a18c0bc16277444..ba367e06366bda560aa2fa52986dc9b30bb10144 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/sample/SampleBrowserGrid.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/sample/SampleBrowserGrid.java
@@ -404,7 +404,16 @@ public class SampleBrowserGrid extends
     protected void addEntityOperationButtons()
     {
 
-        final Button addButton = createAddSampleButton();
+        final Button addButton =
+                new Button(viewContext.getMessage(Dict.BUTTON_ADD, "Sample"),
+                        new SelectionListener<ButtonEvent>()
+                            {
+                                @Override
+                                public void componentSelected(ButtonEvent ce)
+                                {
+                                    openSampleRegistrationTab();
+                                }
+                            });
         addButton(addButton);
 
         String showDetailsTitle = viewContext.getMessage(Dict.BUTTON_SHOW_DETAILS);
@@ -436,19 +445,6 @@ public class SampleBrowserGrid extends
         allowMultipleSelection(); // we allow deletion of multiple samples
     }
 
-    private Button createAddSampleButton()
-    {
-        return new Button(viewContext.getMessage(Dict.BUTTON_ADD, "Sample"),
-                new SelectionListener<ButtonEvent>()
-                    {
-                        @Override
-                        public void componentSelected(ButtonEvent ce)
-                        {
-                            openSampleRegistrationTab();
-                        }
-                    });
-    }
-
     private void openSampleRegistrationTab()
     {
         if (experimentIdOrNull != null)
@@ -464,10 +460,7 @@ public class SampleBrowserGrid extends
             {
                 final ListSampleCriteria browseCriteria = criteriaOrNull.getBrowseCriteria();
                 final SampleType sampleType = browseCriteria.getSampleType();
-                if (sampleType.isAllTypesCode() == false)
-                {
-                    context.setSampleType(sampleType);
-                }
+                context.setSampleType(sampleType);
                 final String spaceCode = browseCriteria.getSpaceCode();
                 context.setSpaceCode(spaceCode);
             }
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/dto/ListExperimentsCriteria.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/dto/ListExperimentsCriteria.java
index 79ac3ef338ea8b410e1bb956d30891c5f295c15f..2eaac57e533738852bcb7f3bbc32e2186f55a944 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/dto/ListExperimentsCriteria.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/dto/ListExperimentsCriteria.java
@@ -20,6 +20,7 @@ import com.google.gwt.user.client.rpc.IsSerializable;
 
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Experiment;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExperimentType;
+import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Project;
 
 /**
  * Criteria for listing <i>experiments</i>.
@@ -31,9 +32,7 @@ public final class ListExperimentsCriteria extends DefaultResultSetConfig<String
 {
     private ExperimentType experimentType;
 
-    private String groupCode;
-
-    private String projectCode;
+    private Project project;
 
     public ExperimentType getExperimentType()
     {
@@ -47,22 +46,22 @@ public final class ListExperimentsCriteria extends DefaultResultSetConfig<String
 
     public String getGroupCode()
     {
-        return groupCode;
+        return project.getSpace().getCode();
     }
 
-    public void setGroupCode(final String groupCode)
+    public String getProjectCode()
     {
-        this.groupCode = groupCode;
+        return project.getCode();
     }
 
-    public String getProjectCode()
+    public Project getProject()
     {
-        return projectCode;
+        return project;
     }
 
-    public void setProjectCode(final String projectCode)
+    public void setProject(Project project)
     {
-        this.projectCode = projectCode;
+        this.project = project;
     }
 
 }
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/Project.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/Project.java
index 91f71ce68340333d78d951c99e0bbf46511c22ad..e233694ce269943a3c53fc3fba48b9e73bde507d 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/Project.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/Project.java
@@ -134,4 +134,10 @@ public class Project extends CodeWithRegistration<Project> implements IAttachmen
         this.modificationDate = modificationDate;
     }
 
+    @Override
+    public String toString()
+    {
+        return identifier;
+    }
+
 }
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/ClientPluginFactory.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/ClientPluginFactory.java
index 9812a66eb16846c25629dd41d957a64cde9fe362..fa4530924903e148c3f8787eb516b9a09be0f230 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/ClientPluginFactory.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/ClientPluginFactory.java
@@ -333,7 +333,7 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Gener
                 ExperimentType entityType, ActionContext context)
         {
             GenericExperimentRegistrationForm form =
-                    new GenericExperimentRegistrationForm(getViewContext(), entityType);
+                    new GenericExperimentRegistrationForm(getViewContext(), context, entityType);
             return new DatabaseModificationAwareWidget(form, form);
         }
 
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/AbstractGenericExperimentRegisterEditForm.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/AbstractGenericExperimentRegisterEditForm.java
index 2c478c6db2f22eadf9ac9425e777f486820bb6dc..02777e4bec37f4c39ac79c8f92f8054b8f313a34 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/AbstractGenericExperimentRegisterEditForm.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/AbstractGenericExperimentRegisterEditForm.java
@@ -38,6 +38,7 @@ import com.extjs.gxt.ui.client.widget.form.RadioGroup;
 import com.google.gwt.user.client.Event;
 
 import ch.systemsx.cisd.openbis.generic.client.web.client.ICommonClientServiceAsync;
+import ch.systemsx.cisd.openbis.generic.client.web.client.application.ActionContext;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.Dict;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.FormPanelListener;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.IViewContext;
@@ -76,6 +77,8 @@ abstract public class AbstractGenericExperimentRegisterEditForm extends
 
     protected ProjectSelectionWidget projectChooser;
 
+    private String initialProjectIdentifierOrNull;
+
     protected ExperimentSamplesArea samplesArea;
 
     protected final String samplesSessionKey;
@@ -95,13 +98,14 @@ abstract public class AbstractGenericExperimentRegisterEditForm extends
     private LabelField templateField;
 
     protected AbstractGenericExperimentRegisterEditForm(
-            IViewContext<IGenericClientServiceAsync> viewContext)
+            IViewContext<IGenericClientServiceAsync> viewContext, ActionContext context)
     {
-        this(viewContext, null);
+        this(viewContext, context, null);
     }
 
     protected AbstractGenericExperimentRegisterEditForm(
-            IViewContext<IGenericClientServiceAsync> viewContext, IIdAndCodeHolder identifiable)
+            IViewContext<IGenericClientServiceAsync> viewContext, ActionContext actionContext,
+            IIdAndCodeHolder identifiable)
     {
         super(viewContext, identifiable, EntityKind.EXPERIMENT);
 
@@ -112,6 +116,12 @@ abstract public class AbstractGenericExperimentRegisterEditForm extends
         sesionKeys.add(attachmentsSessionKey);
         sesionKeys.add(samplesSessionKey);
         addUploadFeatures(sesionKeys);
+        extractInitialValues(actionContext);
+    }
+
+    private void extractInitialValues(ActionContext context)
+    {
+        this.initialProjectIdentifierOrNull = context.tryGetProjectIdentifier();
     }
 
     protected void updateSamples()
@@ -260,7 +270,8 @@ abstract public class AbstractGenericExperimentRegisterEditForm extends
     @Override
     protected void createEntitySpecificFormFields()
     {
-        projectChooser = new ProjectSelectionWidget(viewContext, simpleId);
+        projectChooser =
+                new ProjectSelectionWidget(viewContext, simpleId, initialProjectIdentifierOrNull);
         projectChooser.setFieldLabel(viewContext.getMessage(Dict.PROJECT));
         FieldUtil.markAsMandatory(projectChooser);
 
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/GenericExperimentEditForm.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/GenericExperimentEditForm.java
index b3d7d894d5f0adc9677a86d9803b9077bedf9e37..6ceae1d005e9adf774a5fc2229339094ebacc7e1 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/GenericExperimentEditForm.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/GenericExperimentEditForm.java
@@ -17,6 +17,7 @@
 package ch.systemsx.cisd.openbis.plugin.generic.client.web.client.application.experiment;
 
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.AbstractAsyncCallback;
+import ch.systemsx.cisd.openbis.generic.client.web.client.application.ActionContext;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.Dict;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.IViewContext;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.DatabaseModificationAwareComponent;
@@ -50,7 +51,7 @@ public final class GenericExperimentEditForm extends AbstractGenericExperimentRe
     private GenericExperimentEditForm(IViewContext<IGenericClientServiceAsync> viewContext,
             IIdAndCodeHolder identifiable)
     {
-        super(viewContext, identifiable);
+        super(viewContext, new ActionContext(), identifiable);
     }
 
     private void loadSamplesInBackground()
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/GenericExperimentRegistrationForm.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/GenericExperimentRegistrationForm.java
index 7b5fc75b7fdabfbb86b154448ff8be18cf578676..33882be89f8fd0c800c1f829ae2cbd334405929c 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/GenericExperimentRegistrationForm.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/GenericExperimentRegistrationForm.java
@@ -21,6 +21,7 @@ import java.util.List;
 import com.extjs.gxt.ui.client.widget.form.FileUploadField;
 
 import ch.systemsx.cisd.openbis.generic.client.web.client.ICommonClientServiceAsync;
+import ch.systemsx.cisd.openbis.generic.client.web.client.application.ActionContext;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.IViewContext;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.AbstractRegistrationForm;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExperimentType;
@@ -43,9 +44,9 @@ public final class GenericExperimentRegistrationForm extends
 
     public GenericExperimentRegistrationForm(
             final IViewContext<IGenericClientServiceAsync> viewContext,
-            final ExperimentType experimentType)
+            final ActionContext context, final ExperimentType experimentType)
     {
-        super(viewContext);
+        super(viewContext, context);
         this.experimentType = experimentType;
     }