This is an automated email from the ASF dual-hosted git repository. borinquenkid pushed a commit to branch 8.0.x-hibernate7 in repository https://gitbox.apache.org/repos/asf/grails-core.git
commit 7420acffd6fe2eac78b7312f442323abf139e9e6 Author: Walter B Duque de Estrada <[email protected]> AuthorDate: Sat Jan 24 21:18:31 2026 -0600 update progress --- .../orm/hibernate/cfg/domainbinding/BasicValueIdCreator.java | 11 ++++++++++- .../cfg/domainbinding/BasicValueIdCreatorSpec.groovy | 2 +- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/BasicValueIdCreator.java b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/BasicValueIdCreator.java index 265a44e101..14606df5dd 100644 --- a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/BasicValueIdCreator.java +++ b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/BasicValueIdCreator.java @@ -33,6 +33,10 @@ public class BasicValueIdCreator { initializeGeneratorFactories(); } + public BasicValueIdCreator(MetadataBuildingContext metadataBuildingContext, JdbcEnvironment jdbcEnvironment, Map<String, BiFunction<GeneratorCreationContext, Identity, Generator>> generatorFactories) { + this(jdbcEnvironment, new BasicValue(metadataBuildingContext), generatorFactories); + } + protected BasicValueIdCreator(JdbcEnvironment jdbcEnvironment , BasicValue prototypeBasicValue , Map<String, BiFunction<GeneratorCreationContext @@ -69,8 +73,13 @@ public class BasicValueIdCreator { if (mappedId != null && mappedId.getName() == null) { mappedId.setName(entityName); } - return generatorFactories.getOrDefault(generatorName, (ctx, mid) -> new GrailsNativeGenerator(ctx)) + Generator generator = generatorFactories.getOrDefault(generatorName, (ctx, mid) -> new GrailsNativeGenerator(ctx)) .apply(context, mappedId); + System.out.println("GENERATOR: name=" + generatorName + ", type=" + generator.getClass().getName()); + if (generator instanceof org.hibernate.id.IdentifierGenerator identifierGenerator) { + identifierGenerator.initialize(context.getSqlStringGenerationContext()); + } + return generator; }); return id; diff --git a/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/BasicValueIdCreatorSpec.groovy b/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/BasicValueIdCreatorSpec.groovy index 834c011aa4..a474792a9b 100644 --- a/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/BasicValueIdCreatorSpec.groovy +++ b/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/BasicValueIdCreatorSpec.groovy @@ -26,7 +26,7 @@ class BasicValueIdCreatorSpec extends HibernateGormDatastoreSpec { creator = new BasicValueIdCreator(metadataBuildingContext, getGrailsDomainBinder().getJdbcEnvironment(), generatorFactories) entity = new RootClass(metadataBuildingContext) table = new Table("test_table") - entity.setTable(table)\ + entity.setTable(table) } @Unroll
