diff --git a/drools-planner-core/src/main/java/org/drools/planner/core/domain/solution/SolutionDescriptor.java b/drools-planner-core/src/main/java/org/drools/planner/core/domain/solution/SolutionDescriptor.java
index <HASH>..<HASH> 100644
--- a/drools-planner-core/src/main/java/org/drools/planner/core/domain/solution/SolutionDescriptor.java
+++ b/drools-planner-core/src/main/java/org/drools/planner/core/domain/solution/SolutionDescriptor.java
@@ -163,8 +163,11 @@ public class SolutionDescriptor implements Serializable {
     public boolean isInitialized(Solution solution) {
         for (PropertyDescriptor entityPropertyDescriptor : entityPropertyDescriptorMap.values()) {
             Object entity = extractPlanningEntity(entityPropertyDescriptor, solution);
+            if (entity == null) {
+                return false;
+            }
             PlanningEntityDescriptor planningEntityDescriptor = getPlanningEntityDescriptor(entity.getClass());
-            if (entity == null || !planningEntityDescriptor.isInitialized(entity)) {
+            if (!planningEntityDescriptor.isInitialized(entity)) {
                 return false;
             }
         }
findbugs another redundant nullcheck => found another really nice bug: possible NPE