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 14f91bb8735afe11d0d266f2ef26b311082bd4f6 Author: Walter B Duque de Estrada <[email protected]> AuthorDate: Sat Jan 24 15:15:55 2026 -0600 update progress --- .../grails/orm/hibernate/cfg/GrailsDomainBinder.java | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/GrailsDomainBinder.java b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/GrailsDomainBinder.java index 4a5b34d46f..22576856b0 100644 --- a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/GrailsDomainBinder.java +++ b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/GrailsDomainBinder.java @@ -37,6 +37,8 @@ import org.grails.orm.hibernate.cfg.domainbinding.SimpleValueColumnBinder; import org.grails.orm.hibernate.cfg.domainbinding.TypeNameProvider; import org.grails.orm.hibernate.cfg.domainbinding.*; +import com.sun.jdi.IntegerType; +import com.sun.jdi.LongType; import org.hibernate.FetchMode; import org.hibernate.MappingException; import org.hibernate.boot.ResourceStreamLocator; @@ -1584,7 +1586,9 @@ public class GrailsDomainBinder PersistentProperty identifierProp = domainClass.getIdentity(); if (gormMapping == null) { if(identifierProp != null) { - bindSimpleId(identifierProp, root, mappings, null, sessionFactoryBeanName, domainClass); + SimpleIdBinder simpleIdBinder = new SimpleIdBinder(metadataBuildingContext,namingStrategy, getJdbcEnvironment(), domainClass, root); + simpleIdBinder.bindSimpleId(identifierProp, root, null); + } return; } @@ -1595,7 +1599,7 @@ public class GrailsDomainBinder } else { final Identity identity = (Identity) id; String propertyName = identity.getName(); - if (propertyName != null) { + if (propertyName != null && !propertyName.equals(domainClass.getName())) { PersistentProperty namedIdentityProp = domainClass.getPropertyByName(propertyName); if (namedIdentityProp == null) { throw new MappingException("Mapping specifies an identifier property name that doesn't exist ["+propertyName+"]"); @@ -1604,7 +1608,9 @@ public class GrailsDomainBinder identifierProp = namedIdentityProp; } } - bindSimpleId(identifierProp, root, mappings, identity, sessionFactoryBeanName, domainClass); + SimpleIdBinder simpleIdBinder = new SimpleIdBinder(metadataBuildingContext,namingStrategy, getJdbcEnvironment(), domainClass, root); + simpleIdBinder.bindSimpleId(identifierProp, root, identity); + } } @@ -2006,14 +2012,6 @@ public class GrailsDomainBinder } } - @SuppressWarnings("unchecked") - private void bindSimpleId(PersistentProperty identifier, RootClass entity, - InFlightMetadataCollector mappings, Identity mappedId, String sessionFactoryBeanName, HibernatePersistentEntity domainClass) { - SimpleIdBinder simpleIdBinder = new SimpleIdBinder(metadataBuildingContext,namingStrategy, getJdbcEnvironment(), domainClass,entity); - simpleIdBinder.bindSimpleId(identifier, entity, mappedId); - - } - private String getIndexColumnName(PersistentProperty property, String sessionFactoryBeanName) { PropertyConfig pc = new PersistentPropertyToPropertyConfig().toPropertyConfig(property);
