diff --git a/querydsl-collections/src/main/java/com/mysema/query/collections/CollQuerySerializer.java b/querydsl-collections/src/main/java/com/mysema/query/collections/CollQuerySerializer.java index dfa97d4d7..8d3e6125e 100644 --- a/querydsl-collections/src/main/java/com/mysema/query/collections/CollQuerySerializer.java +++ b/querydsl-collections/src/main/java/com/mysema/query/collections/CollQuerySerializer.java @@ -72,7 +72,7 @@ public final class CollQuerySerializer extends SerializerBase path, Void context) { - PathType pathType = path.getMetadata().getPathType(); + final PathType pathType = path.getMetadata().getPathType(); if (pathType == PathType.PROPERTY) { // TODO : move this to PathMetadata ?!? @@ -80,9 +80,9 @@ public final class CollQuerySerializer extends SerializerBase parentType = path.getMetadata().getParent().getType(); + final String property = path.getMetadata().getName(); + final String accessor = prefix + BeanUtils.capitalize(property); + final Class parentType = path.getMetadata().getParent().getType(); try { // getter Method m = getMethod(parentType, accessor); @@ -119,7 +119,7 @@ public final class CollQuerySerializer extends SerializerBase)path.getMetadata().getParent()); } args.add(path.getMetadata().getElement()); - Template template = getTemplate(pathType); + final Template template = getTemplate(pathType); for (Template.Element element : template.getElements()) { Object rv = element.convert(args); if (rv instanceof Expression) { @@ -200,7 +200,7 @@ public final class CollQuerySerializer extends SerializerBase expr, Void context) { - handle(new ConstantImpl(expr)); + visitConstant(expr); append(".newInstance("); handle(", ", expr.getArgs()); append(")");