Add Hibernate 7 batches 2-6, batch 7, and batch 8: mapping styles, JPA annotations, natural IDs, @Immutable, stored procedures, in-memory test databases, JNDI mocking, proxies, associations, temporal mapping, named queries, HQL, Criteria API, EntityManager bootstrapping, Ehcache 3 L2 cache configuration, HikariCP connection pooling, Hibernate Validator CDI integration, aggregate functions, sorting, pagination, interceptors, and Hibernate Search 8 (Hibernate 7.4.5.Final + Spring Boot 4.1.1 + JDK 25)
This commit is contained in:
+34
@@ -0,0 +1,34 @@
|
||||
# Two real failures hit while wiring up Derby 10.16.1.1 against Hibernate ORM 7.4.5.Final.
|
||||
# Both captured verbatim from actual test/debug runs in this sandbox.
|
||||
|
||||
## Failure 1: dialect auto-detection refuses to guess for Derby
|
||||
# (hibernate.dialect NOT set -- relying on JDBC metadata auto-detection, which works fine for
|
||||
# both H2 and HSQLDB in this same test suite)
|
||||
|
||||
org.hibernate.HibernateException: Unable to determine Dialect for Apache Derby 10.16 (please set 'hibernate.dialect' or register a Dialect resolver)
|
||||
at org.hibernate.engine.jdbc.dialect.internal.DialectFactoryImpl.determineDialect(DialectFactoryImpl.java:202)
|
||||
at org.hibernate.engine.jdbc.dialect.internal.DialectFactoryImpl.buildDialect(DialectFactoryImpl.java:86)
|
||||
at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator$1.execute(JdbcEnvironmentInitiator.java:398)
|
||||
|
||||
# Note: the JDBC connection itself succeeded (product name/version WAS read: "Apache Derby
|
||||
# 10.16") -- this is not a connectivity problem, it's Hibernate's dialect resolver chain simply
|
||||
# not recognizing that product/version pair anymore.
|
||||
|
||||
## Failure 2: the "obvious" fix (set hibernate.dialect explicitly to the old FQCN) also fails
|
||||
# hibernate.dialect=org.hibernate.dialect.DerbyDialect
|
||||
|
||||
Caused by: org.hibernate.boot.registry.classloading.spi.ClassLoadingException: Unable to load class [org.hibernate.dialect.DerbyDialect]
|
||||
Caused by: java.lang.ClassNotFoundException: Could not load requested class: org.hibernate.dialect.DerbyDialect
|
||||
|
||||
# org.hibernate.dialect.DerbyDialect does not exist anywhere in hibernate-core-7.4.5.Final.jar
|
||||
# (confirmed: unzip -l hibernate-core-7.4.5.Final.jar | grep -i derby -> zero matches).
|
||||
|
||||
## The actual fix
|
||||
|
||||
# Add org.hibernate.orm:hibernate-community-dialects:7.4.5.Final (a SEPARATE artifact,
|
||||
# NOT pulled in by hibernate-core, spring-boot-starter-data-jpa, or any Spring Boot starter)
|
||||
# and set:
|
||||
# hibernate.dialect=org.hibernate.community.dialect.DerbyDialect
|
||||
# Confirmed present: unzip -l hibernate-community-dialects-7.4.5.Final.jar | grep -i derby
|
||||
# -> org/hibernate/community/dialect/DerbyDialect.class (and DerbyLegacyDialect, for older
|
||||
# Derby versions, also in this module).
|
||||
Reference in New Issue
Block a user