@@ -191,10 +191,15 @@ public EntitiesSearchResult searchEntities(String entityName,
191
191
throw new RestAPIException ("Cannot parse entities filter" , e .getMessage (), HttpStatus .BAD_REQUEST , e );
192
192
}
193
193
194
- String jpqlWhere = filterParseResult .getJpqlWhere (). replace ( "{E}" , "e" ) ;
194
+ String jpqlWhere = filterParseResult .getJpqlWhere ();
195
195
Map <String , Object > queryParameters = filterParseResult .getQueryParameters ();
196
196
197
- String queryString = "select e from " + entityName + " e where " + jpqlWhere ;
197
+ String queryString = "select e from " + entityName + " e" ;
198
+
199
+ if (jpqlWhere != null ) {
200
+ queryString += " where " + jpqlWhere .replace ("{E}" , "e" );
201
+ }
202
+
198
203
String json = _loadEntitiesList (queryString , viewName , limit , offset , sort , returnNulls ,
199
204
dynamicAttributes , modelVersion , metaClass , queryParameters );
200
205
Long count = null ;
@@ -225,11 +230,18 @@ public Long countSearchEntities(String entityName,
225
230
throw new RestAPIException ("Cannot parse entities filter" , e .getMessage (), HttpStatus .BAD_REQUEST , e );
226
231
}
227
232
228
- String jpqlWhere = filterParseResult .getJpqlWhere (). replace ( "{E}" , "e" ) ;
233
+ String jpqlWhere = filterParseResult .getJpqlWhere ();
229
234
Map <String , Object > queryParameters = filterParseResult .getQueryParameters ();
230
235
231
- String queryString = "select count(e) from " + entityName + " e where " + jpqlWhere ;
232
- return dataManager .loadValue (queryString , Long .class ).setParameters (queryParameters ).one ();
236
+ String queryString = "select count(e) from " + entityName + " e" ;
237
+
238
+ if (jpqlWhere != null ) {
239
+ queryString += " where " + jpqlWhere .replace ("{E}" , "e" );
240
+ }
241
+
242
+ return dataManager .loadValue (queryString , Long .class )
243
+ .setParameters (queryParameters )
244
+ .one ();
233
245
}
234
246
235
247
public EntitiesSearchResult searchEntities (String entityName , String searchRequestBody ) {
0 commit comments