@@ -240,7 +240,7 @@ private ResolvedExpression resolveExpression(ComparisonNode node, From root, Sel
240240 String jsonSelector = PathUtils .expectBestMapping (node .getSelector (), propertyPathMapper );
241241 String jsonbPath = JsonbSupport .jsonPathOfSelector (attribute , jsonSelector );
242242 if (jsonbPath .contains ("." )) {
243- ComparisonNode jsonbNode = new ComparisonNode ( node .getOperator (), jsonbPath , node . getArguments () );
243+ ComparisonNode jsonbNode = node .withSelector ( jsonbPath );
244244 return JsonbSupport .jsonbPathExistsExpression (builder , jsonbNode , path );
245245 } else {
246246 return ResolvedExpression .ofPath (path .as (String .class ), String .class );
@@ -291,9 +291,10 @@ private Predicate expressionPredicate(ComparisonNode node, ResolvedExpression.Pa
291291 Expression expression = resolvedExpression .expression ();
292292 Class type = resolvedExpression .type ();
293293 var op = node .getOperator ();
294- if (node .getArguments ().size () > 1 ) {
294+ var arguments = node .getArguments ();
295+ if (arguments .size () > 1 ) {
295296 List <Object > listObject = new ArrayList <>();
296- for (String argument : node . getArguments () ) {
297+ for (String argument : arguments ) {
297298 listObject .add (convert (argument , type ));
298299 }
299300 if (op .equals (IN )) {
@@ -320,7 +321,7 @@ private Predicate expressionPredicate(ComparisonNode node, ResolvedExpression.Pa
320321 if (op .equals (NOT_NULL )) {
321322 return builder .isNotNull (expression );
322323 }
323- Object argument = convert (node . getArguments () .get (0 ), type );
324+ Object argument = convert (arguments .get (0 ), type );
324325 if (op .equals (IN )) {
325326 return builder .equal (expression , argument );
326327 }
0 commit comments