Skip to content

Commit e45e27b

Browse files
committed
Removes PlainSelect casting
1 parent 6ac5536 commit e45e27b

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

spring-data-jpa/src/main/java/org/springframework/data/jpa/repository/query/JSqlParserQueryEnhancer.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -237,7 +237,7 @@ private static String detectProjection(Statement statement) {
237237
}
238238

239239
StringJoiner joiner = new StringJoiner(", ");
240-
for (SelectItem<?> selectItem : ((PlainSelect) selectBody).getSelectItems()) {
240+
for (SelectItem<?> selectItem : selectBody.getPlainSelect().getSelectItems()) {
241241
joiner.add(selectItem.toString());
242242
}
243243
return joiner.toString().trim();

spring-data-jpa/src/test/java/org/springframework/data/jpa/repository/query/JSqlParserQueryEnhancerUnitTests.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -257,4 +257,13 @@ static Stream<Arguments> mergeStatementWorksSource() {
257257
null));
258258
}
259259

260+
@Test // GH-3869
261+
void shouldWorkWithoutFromClause() {
262+
String query = "SELECT is_contained_in(:innerId, :outerId)";
263+
264+
StringQuery stringQuery = new StringQuery(query, true);
265+
266+
assertThat(stringQuery.getQueryString()).isEqualTo(query);
267+
}
268+
260269
}

0 commit comments

Comments
 (0)