diff --git a/modules/org.openbravo.service.json/src/org/openbravo/service/json/DefaultJsonDataService.java b/modules/org.openbravo.service.json/src/org/openbravo/service/json/DefaultJsonDataService.java
--- a/modules/org.openbravo.service.json/src/org/openbravo/service/json/DefaultJsonDataService.java
+++ b/modules/org.openbravo.service.json/src/org/openbravo/service/json/DefaultJsonDataService.java
@@ -374,14 +374,20 @@
     if (bobs.size() == 0) {
       return false;
     }
-    Boolean b = Boolean.FALSE;
+
+    BaseOBObject bob = bobs.get(bobs.size() - 1);
+
+    if (bob.getEntity().getProperty("obSelected", false) == null) {
+      // obSelected property does not exist, do nothing: record not selected
+      return false;
+    }
+
     try {
-      BaseOBObject bob = bobs.get(bobs.size() - 1);
-      b = (Boolean) bob.get("obSelected");
+      return (Boolean) bob.get("obSelected");
     } catch (Exception ex) {
       // Error retrieving obSelected property, do nothing: record not selected
+      return false;
     }
-    return b.booleanValue();
   }
 
   public void fetch(Map<String, String> parameters, QueryResultWriter writer) {
