diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/public/resources/applications/openbis-screening-test/openbis-screening-test.js b/openbis/source/java/ch/systemsx/cisd/openbis/public/resources/applications/openbis-screening-test/openbis-screening-test.js
index 22be369879d7cd8a7875d83985684ca2f3c078da..3aab437640ce74ad1d9e7cdac75b0c1ac6333a69 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/public/resources/applications/openbis-screening-test/openbis-screening-test.js
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/public/resources/applications/openbis-screening-test/openbis-screening-test.js
@@ -122,7 +122,7 @@ var listImageReferencesAndFormatForPlateIdentifierAndWellPositionAndChannel = fu
 			facade.listAvailableImageRepresentationFormats(imageDataSets, function(formatResponse){
 				action({
 					imageReferences : imageReferencesResponse.result,
-					formats : formatResponse.result[0].imageRepresentationFormats[0]
+					format : formatResponse.result[0].imageRepresentationFormats[0]
 				});
 			});
 		});
@@ -428,18 +428,23 @@ test("loadImagesBase64ForImageReferencesAndImageConversion()", function(){
 	});
 });
 
+/*
+
+TODO generate thumbnails
+
 test("loadThumbnailImagesBase64ForImageReferences()", function(){
 	createFacadeAndLogin(function(facade){
 		listImageReferencesForPlateIdentifierAndWellPositionAndChannel(facade, "/PLATONIC/PLATE-1", 1, 1, "DAPI", function(imageReferences){
 			facade.loadThumbnailImagesBase64ForImageReferences(imageReferences, function(response){
-				// TODO generate some thumbnails at screening sprint server
-				assertObjectsCount(response.result, 0);
+				assertObjectsCount(response.result, 9);
 				facade.close();
 			});
 		});
 	});
 });
 
+*/
+
 test("loadImagesBase64ForImageReferencesAndImageSize()", function(){
 	createFacadeAndLogin(function(facade){
 		listImageReferencesForPlateIdentifierAndWellPositionAndChannel(facade, "/PLATONIC/PLATE-1", 1, 1, "DAPI", function(imageReferences){
@@ -499,4 +504,167 @@ test("loadImagesBase64ForImageReferencesAndImageRepresentationFormatCriteria()",
 			});
 		});
 	});
-});
\ No newline at end of file
+});
+
+test("listImageMetadata()", function(){
+	createFacadeAndLogin(function(facade){
+		listImageDatasetReferencesForPlateIdentifier(facade, "/PLATONIC/PLATE-1", function(imageDataSets){
+			facade.listImageMetadata(imageDataSets, function(response){
+				assertObjectsCount(response.result, 3);
+				assertObjectsWithValuesFunction(response.result, "datasetCode", function(result){
+					return result.imageDataset.datasetCode;
+				}, ["20110913111517610-82996", "20110913112525450-83000", "20110913113026096-83001"]);
+				facade.close();
+			});
+		});
+	});
+});
+
+test("listAvailableImageRepresentationFormats()", function(){
+	createFacadeAndLogin(function(facade){
+		listImageDatasetReferencesForPlateIdentifier(facade, "/PLATONIC/PLATE-1", function(imageDataSets){
+			facade.listAvailableImageRepresentationFormats(imageDataSets, function(response){
+				assertObjectsCount(response.result, 3);
+				assertObjectsWithValuesFunction(response.result, "datasetCode", function(result){
+					return result.dataset.datasetCode;
+				}, ["20110913111517610-82996", "20110913112525450-83000", "20110913113026096-83001"]);
+				facade.close();
+			});
+		});
+	});
+});
+
+/*
+
+TODO generate thumbnails
+
+test("loadPhysicalThumbnailsBase64ForImageReferencesAndImageRepresentationFormat()", function(){
+	createFacadeAndLogin(function(facade){
+		listImageReferencesAndFormatForPlateIdentifierAndWellPositionAndChannel(facade, "/PLATONIC/PLATE-1", 1, 1, "DAPI", function(results){
+			facade.loadPhysicalThumbnailsBase64ForImageReferencesAndImageRepresentationFormat(results.imageReferences, results.format, function(response){
+				assertObjectsCount(response.result, 9);
+				facade.close();
+			});
+		});
+	});
+});
+
+*/
+
+test("loadImagesBase64ForDataSetIdentifierAndWellPositionsAndChannelAndImageSize()", function(){
+	createFacadeAndLogin(function(facade){
+		listImageDatasetReferencesForPlateIdentifier(facade, "/PLATONIC/PLATE-1", function(imageDataSets){
+			var dataSetIdentifier = imageDataSets[0];
+			var wellPositions = [ createWellPosition(1, 1) ];
+			var channel = "DAPI";
+			var thumbnailSizeOrNull = createImageSize(100, 100);
+			
+			facade.loadImagesBase64ForDataSetIdentifierAndWellPositionsAndChannelAndImageSize(dataSetIdentifier, wellPositions , channel, thumbnailSizeOrNull, function(response){
+				assertObjectsCount(response.result, 9);
+				facade.close();
+			});
+		});
+	});
+});
+
+test("loadImagesBase64ForDataSetIdentifierAndChannelAndImageSize()", function(){
+	createFacadeAndLogin(function(facade){
+		var datasetCodes = ["20110913114645299-83009"];
+		
+		facade.getDatasetIdentifiers(datasetCodes, function(response){
+			var datasetIdentifier = response.result[0];
+			var channel = "RGB";
+			var thumbnailSizeOrNull = createImageSize(100, 100);
+			
+			facade.loadImagesBase64ForDataSetIdentifierAndChannelAndImageSize(datasetIdentifier, channel, thumbnailSizeOrNull, function(response){
+				assertObjectsCount(response.result, 1);
+				facade.close();
+			});
+		});
+	});
+});
+
+/*
+
+TODO generate thumbnails
+
+test("loadThumbnailImagesBase64ForDataSetIdentifierAndChannels()", function(){
+	createFacadeAndLogin(function(facade){
+		var datasetCodes = ["20110913114645299-83009"];
+		
+		facade.getDatasetIdentifiers(datasetCodes, function(response){
+			var datasetIdentifier = response.result[0];
+			var channels = ["RGB"];
+			
+			facade.loadThumbnailImagesBase64ForDataSetIdentifierAndChannels(datasetIdentifier, channels, function(response){
+				assertObjectsCount(response.result, 1);
+				facade.close();
+			});
+		});
+	});
+});
+
+*/
+
+test("listPlateImageReferencesForDataSetIdentifierAndWellPositionsAndChannel()", function(){
+	createFacadeAndLogin(function(facade){
+		listImageDatasetReferencesForPlateIdentifier(facade, "/PLATONIC/PLATE-1", function(imageDataSets){
+			var dataSetIdentifier = imageDataSets[0];
+			var wellPositions = [ createWellPosition(1, 1) ];
+			var channel = "DAPI";
+			
+			facade.listPlateImageReferencesForDataSetIdentifierAndWellPositionsAndChannel(dataSetIdentifier, wellPositions , channel, function(response){
+				assertObjectsCount(response.result, 9);
+				facade.close();
+			});
+		});
+	});
+});
+
+test("listPlateImageReferencesForDataSetIdentifierAndWellPositionsAndChannels()", function(){
+	createFacadeAndLogin(function(facade){
+		listImageDatasetReferencesForPlateIdentifier(facade, "/PLATONIC/PLATE-1", function(imageDataSets){
+			var dataSetIdentifier = imageDataSets[0];
+			var wellPositions = [ createWellPosition(1, 1) ];
+			var channels = ["DAPI"];
+			
+			facade.listPlateImageReferencesForDataSetIdentifierAndWellPositionsAndChannels(dataSetIdentifier, wellPositions , channels, function(response){
+				assertObjectsCount(response.result, 9);
+				facade.close();
+			});
+		});
+	});
+});
+
+test("listImageReferencesForDataSetIdentifierAndChannel()", function(){
+	createFacadeAndLogin(function(facade){
+		var datasetCodes = ["20110913114645299-83009"];
+		
+		facade.getDatasetIdentifiers(datasetCodes, function(response){
+			var datasetIdentifier = response.result[0];
+			var channel = "RGB";
+			
+			facade.listImageReferencesForDataSetIdentifierAndChannel(datasetIdentifier, channel, function(response){
+				assertObjectsCount(response.result, 1);
+				facade.close();
+			});
+		});
+	});
+});
+
+test("listImageReferencesForDataSetIdentifierAndChannels()", function(){
+	createFacadeAndLogin(function(facade){
+		var datasetCodes = ["20110913114645299-83009"];
+		
+		facade.getDatasetIdentifiers(datasetCodes, function(response){
+			var datasetIdentifier = response.result[0];
+			var channels = ["RGB"];
+			
+			facade.listImageReferencesForDataSetIdentifierAndChannels(datasetIdentifier, channels, function(response){
+				assertObjectsCount(response.result, 1);
+				facade.close();
+			});
+		});
+	});
+});
+
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/screening/server/DssServiceRpcScreening.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/screening/server/DssServiceRpcScreening.java
index 437e03276c61c1808781a0a0e25f5999062509cb..062a0c6e2db7d22148577a1850df24bfe844ad57 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/screening/server/DssServiceRpcScreening.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/screening/server/DssServiceRpcScreening.java
@@ -1022,12 +1022,12 @@ public class DssServiceRpcScreening extends AbstractDssServiceRpc<IDssServiceRpc
                     loader.tryGetThumbnail(imageReference.getChannel(), channelStackRef,
                             new RequestedImageSize(size, false, false), transformation);
 
-            IHierarchicalContentNode content = imr.tryGetRawContent();
+            IHierarchicalContentNode content = imr != null ? imr.tryGetRawContent() : null;
 
             if (content == null)
             {
                 throw new UserFailureException(
-                        "Couldn't fetch the image as row content, as it is only a partial content of an image");
+                        "Couldn't fetch the image as raw content, as it is only a partial content of an image");
             }
             imageContents.add(content);
         }