diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/content/RemoteHierarchicalContent.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/content/RemoteHierarchicalContent.java
index 863d4c8d8355001e0a3a71285670d48695bbbc8b..453ec009bfe0d400fd2b93489b4b8a0ce1cbb40b 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/content/RemoteHierarchicalContent.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/content/RemoteHierarchicalContent.java
@@ -100,15 +100,9 @@ public class RemoteHierarchicalContent implements IHierarchicalContent
             info = provider.tryGetPathInfoByRelativePath(relativePath);
         }
 
-        // 2013-01-29, BR: check this: according to the contract this method should throw
-        // IllegalArgumentException if the path does not exist.
         if (info == null)
         {
-            info = new DataSetPathInfo();
-            info.setDirectory(true);
-            info.setRelativePath(relativePath);
-            info.setParent(null);
-            info.setFileName("");
+            throw new IllegalArgumentException("Resource '" + relativePath + "' does not exist.");
         }
 
         return createNode(info);