diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialFeaturesFromAllExperimentsGrid.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialFeaturesFromAllExperimentsGrid.java
index 170c59d756ee2ac806a191b146d94efe3c191a55..fd7ef66cb06f2b4e82c338f19e6dceaac8929f52 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialFeaturesFromAllExperimentsGrid.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialFeaturesFromAllExperimentsGrid.java
@@ -120,8 +120,14 @@ public class MaterialFeaturesFromAllExperimentsGrid extends
                                 TableModelRowWithObject<MaterialSimpleFeatureVectorSummary> rowItem,
                                 boolean specialKeyPressed)
                         {
-                            String experimentPermId =
-                                    rowItem.getObjectOrNull().getExperiment().getPermId();
+                            MaterialSimpleFeatureVectorSummary summaryOrNull =
+                                    rowItem.getObjectOrNull();
+                            if (summaryOrNull == null)
+                            {
+                                return;
+                            }
+                            String experimentPermId = summaryOrNull.getExperiment().getPermId();
+
                             // NOTE: even in not-embedded mode we open specific standalone summary
                             // view instead of material detail view (which contains the summary view
                             // as one of its tabs). The reason is that in such a case we are already
@@ -136,15 +142,18 @@ public class MaterialFeaturesFromAllExperimentsGrid extends
                                 ISerializableComparable value)
                         {
                             ExperimentSearchCriteria experiment = getExperimentCriteria(entity);
-                            return ScreeningLinkExtractor.createMaterialDetailsLink(material,
-                                    experiment);
+                            String link =
+                                    ScreeningLinkExtractor.createMaterialDetailsLink(material,
+                                            experiment);
+                            return link;
                         }
                     });
     }
 
     private boolean getRestrictGlobalScopeLinkToProject()
     {
-        return experimentSearchCriteria.tryGetProjectIdentifier() != null;
+        return experimentSearchCriteria != null
+                && experimentSearchCriteria.tryGetProjectIdentifier() != null;
     }
 
     private ExperimentSearchCriteria getExperimentCriteria(