File tree Expand file tree Collapse file tree
main/java/org/springframework/data/jpa/repository/aot
test/java/org/springframework/data/jpa/repository/aot Expand file tree Collapse file tree Original file line number Diff line number Diff line change 2828 * {@link TypeCollector} predicates to exclude JPA provider types.
2929 *
3030 * @author Mark Paluch
31+ * @author Christoph Strobl
3132 * @since 4.0
3233 */
3334class JpaTypeFilters implements TypeCollector .TypeCollectorFilters {
@@ -38,7 +39,7 @@ class JpaTypeFilters implements TypeCollector.TypeCollectorFilters {
3839 private static final Predicate <Member > IS_HIBERNATE_MEMBER = member -> member .getName ().startsWith ("$$_hibernate" );
3940
4041 private static final Predicate <Class <?>> CLASS_FILTER = it -> TypeUtils .type (it ).isPartOf ("org.hibernate" ,
41- "org.eclipse.persistence" , "jakarta.persistence" );
42+ "org.eclipse.persistence" , "jakarta.persistence" , "java.sql" );
4243
4344 @ Override
4445 public Predicate <Class <?>> classPredicate () {
Original file line number Diff line number Diff line change 1919
2020import jakarta .persistence .LockOption ;
2121
22+ import java .sql .Clob ;
23+
2224import org .eclipse .persistence .sessions .DatabaseSession ;
2325import org .hibernate .Session ;
2426import org .junit .jupiter .api .Test ;
2931 * Unit tests for {@link JpaTypeFilters}.
3032 *
3133 * @author Mark Paluch
34+ * @author Christoph Strobl
3235 */
3336class JpaTypeFiltersUnitTests {
3437
@@ -37,6 +40,13 @@ void shouldFilterUnreachableField() {
3740 assertThat (TypeCollector .inspect (EnhancedEntity .class ).list ()).containsOnly (EnhancedEntity .class , Reachable .class );
3841 }
3942
43+ @ Test // GH-4228
44+ void shouldFilterNativeSqlTypes () {
45+
46+ JpaTypeFilters filters = new JpaTypeFilters ();
47+ assertThat (filters .classPredicate ().test (Clob .class )).isFalse ();
48+ }
49+
4050 static class Unreachable {
4151
4252 }
You can’t perform that action at this time.
0 commit comments