From 6867d07295598fa7a6f4621d7d20383b9564ea98 Mon Sep 17 00:00:00 2001 From: Jon Brisbin Date: Tue, 24 Jul 2012 08:26:34 -0500 Subject: [PATCH] DATAREST-23 Fix NPE when result of query is null. --- .../rest/webmvc/RepositoryRestController.java | 20 +++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/spring-data-rest-webmvc/src/main/java/org/springframework/data/rest/webmvc/RepositoryRestController.java b/spring-data-rest-webmvc/src/main/java/org/springframework/data/rest/webmvc/RepositoryRestController.java index 38369b293..11412f7e1 100644 --- a/spring-data-rest-webmvc/src/main/java/org/springframework/data/rest/webmvc/RepositoryRestController.java +++ b/spring-data-rest-webmvc/src/main/java/org/springframework/data/rest/webmvc/RepositoryRestController.java @@ -419,15 +419,19 @@ public class RepositoryRestController Object result = queryMethod.method().invoke( repo, paramVals ); Iterator iter; - if ( result instanceof Collection ) { - iter = ((Collection) result).iterator(); - } else if ( result instanceof Page ) { - page = (Page) result; - iter = page.iterator(); + if ( null != result ) { + if ( result instanceof Collection ) { + iter = ((Collection) result).iterator(); + } else if ( result instanceof Page ) { + page = (Page) result; + iter = page.iterator(); + } else { + List l = new ArrayList(); + l.add( result ); + iter = l.iterator(); + } } else { - List l = new ArrayList(); - l.add( result ); - iter = l.iterator(); + iter = Collections.emptyList().iterator(); } Map resultMap = new HashMap();