diff -r f3e2459475a6 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	Tue Apr 16 19:17:41 2013 +0200
+++ b/modules/org.openbravo.service.json/src/org/openbravo/service/json/DefaultJsonDataService.java	Wed Apr 17 15:01:01 2013 +0530
@@ -333,6 +333,16 @@
             || key.equals(JsonConstants.TARGETRECORDID_PARAMETER)
             || (key.startsWith(DataEntityQueryService.PARAM_DELIMITER) && key
                 .endsWith(DataEntityQueryService.PARAM_DELIMITER))) {
+          // in case the runtime parameter is a boolean value, replace it manually to prevent
+          // conversion error.
+          // refer https://issues.openbravo.com/view.php?id=23538
+          String value = parameters.get(key);
+          if (value.equalsIgnoreCase("true") || value.equalsIgnoreCase("false")) {
+            String whereClause = parameters.get(JsonConstants.WHERE_PARAMETER);
+            whereClause = whereClause.replaceAll(key, value);
+            parameters.put(JsonConstants.WHERE_PARAMETER, whereClause);
+            queryService.addFilterParameter(JsonConstants.WHERE_PARAMETER, whereClause);
+          }
           queryService.addFilterParameter(key, parameters.get(key));
         }
 
