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);

Reply via email to