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 b43d53289db67fd7be9d8eeb9920364e5c021ef0
Author: Walter Duque de Estrada <[email protected]>
AuthorDate: Thu Feb 26 23:36:12 2026 -0600

    Fix PMD issues in HibernatePersistentProperty
---
 grails-data-hibernate7/PMD.md                                    | 6 +++---
 .../cfg/domainbinding/hibernate/HibernatePersistentProperty.java | 9 +++++----
 .../hibernate/cfg/GrailsHibernatePersistentPropertySpec.groovy   | 2 +-
 3 files changed, 9 insertions(+), 8 deletions(-)

diff --git a/grails-data-hibernate7/PMD.md b/grails-data-hibernate7/PMD.md
index cea17fd2b7..a26df0089d 100644
--- a/grails-data-hibernate7/PMD.md
+++ b/grails-data-hibernate7/PMD.md
@@ -54,9 +54,9 @@ 
ReturnEmptyCollectionRatherThanNull,org.grails.orm.hibernate.cfg.domainbinding.h
 
DataflowAnomalyAnalysis,org.grails.orm.hibernate.cfg.domainbinding.hibernate.HibernatePersistentEntity,79,YES
 
NullAssignment,org.grails.orm.hibernate.cfg.domainbinding.hibernate.HibernatePersistentEntity,82,YES
 
DataflowAnomalyAnalysis,org.grails.orm.hibernate.cfg.domainbinding.hibernate.HibernatePersistentEntity,82,YES
-DataflowAnomalyAnalysis,org.grails.orm.hibernate.cfg.domainbinding.hibernate.HibernatePersistentProperty,113,
-EmptyCatchBlock,org.grails.orm.hibernate.cfg.domainbinding.hibernate.HibernatePersistentProperty,120,
-ReturnEmptyCollectionRatherThanNull,org.grails.orm.hibernate.cfg.domainbinding.hibernate.HibernatePersistentProperty,198,
+DataflowAnomalyAnalysis,org.grails.orm.hibernate.cfg.domainbinding.hibernate.HibernatePersistentProperty,113,YES
+EmptyCatchBlock,org.grails.orm.hibernate.cfg.domainbinding.hibernate.HibernatePersistentProperty,120,YES
+ReturnEmptyCollectionRatherThanNull,org.grails.orm.hibernate.cfg.domainbinding.hibernate.HibernatePersistentProperty,198,YES
 
DataflowAnomalyAnalysis,org.grails.orm.hibernate.cfg.domainbinding.secondpass.CollectionSecondPassBinder,94,
 
DataflowAnomalyAnalysis,org.grails.orm.hibernate.cfg.domainbinding.secondpass.CollectionWithJoinTableBinder,96,
 
NonSerializableClass,org.grails.orm.hibernate.cfg.domainbinding.secondpass.ListSecondPass,32,
diff --git 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/hibernate/HibernatePersistentProperty.java
 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/hibernate/HibernatePersistentProperty.java
index 62a5f25ca0..aadca583b7 100644
--- 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/hibernate/HibernatePersistentProperty.java
+++ 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/hibernate/HibernatePersistentProperty.java
@@ -102,6 +102,7 @@ public interface HibernatePersistentProperty extends 
PersistentProperty<Property
     return getOwner() instanceof GrailsHibernatePersistentEntity ghpe ? ghpe : 
null;
   }
 
+  @SuppressWarnings("PMD.DataflowAnomalyAnalysis")
   default Class<?> getUserType() {
     PropertyConfig config = getMappedForm();
     if (config == null) return null;
@@ -113,8 +114,8 @@ public interface HibernatePersistentProperty extends 
PersistentProperty<Property
       String typeName = typeObj.toString();
       try {
         userType = Class.forName(typeName, true, 
Thread.currentThread().getContextClassLoader());
-      } catch (ClassNotFoundException e) {
-
+      } catch (ClassNotFoundException ignored) {
+        // ignore
       }
     }
     return userType;
@@ -189,9 +190,9 @@ public interface HibernatePersistentProperty extends 
PersistentProperty<Property
     if (getTypeName(simpleValue) != null) {
       return Optional.ofNullable(getTypeProperty(simpleValue).getMappedForm())
           .map(PropertyConfig::getTypeParams)
-          .orElse(null);
+          .orElse(new java.util.Properties());
     }
-    return null;
+    return new java.util.Properties();
   }
 
   /**
diff --git 
a/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/GrailsHibernatePersistentPropertySpec.groovy
 
b/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/GrailsHibernatePersistentPropertySpec.groovy
index 448af1ced4..ed651ee9bb 100644
--- 
a/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/GrailsHibernatePersistentPropertySpec.groovy
+++ 
b/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/GrailsHibernatePersistentPropertySpec.groovy
@@ -168,7 +168,7 @@ class GrailsHibernatePersistentPropertySpec extends 
HibernateGormDatastoreSpec {
         
         expect:
         property.getTypeName(sv) == "string"
-        property.getTypeParameters(sv) == null // No type params in 
TestEntityWithTypeName
+        property.getTypeParameters(sv).isEmpty() // No type params in 
TestEntityWithTypeName
     }
 
     void "test getTypeName(SimpleValue) with fallback"() {

Reply via email to