From d99e8ccd23b1806f3a46541a2aa933c84b1669f0 Mon Sep 17 00:00:00 2001 From: Miguel Costa <33542778+cstmgl@users.noreply.github.com> Date: Mon, 13 Feb 2023 22:52:17 +0000 Subject: [PATCH] DBUTILS-150: Provide support for IndexedPropertyDescriptor --- .../java/org/apache/commons/dbutils/BeanProcessor.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/apache/commons/dbutils/BeanProcessor.java b/src/main/java/org/apache/commons/dbutils/BeanProcessor.java index 26610a0b..54b1532c 100644 --- a/src/main/java/org/apache/commons/dbutils/BeanProcessor.java +++ b/src/main/java/org/apache/commons/dbutils/BeanProcessor.java @@ -19,6 +19,7 @@ import org.apache.commons.dbutils.annotations.Column; import java.beans.BeanInfo; +import java.beans.IndexedPropertyDescriptor; import java.beans.IntrospectionException; import java.beans.Introspector; import java.beans.PropertyDescriptor; @@ -262,7 +263,12 @@ private T populateBean(final ResultSet rs, final T bean, } final PropertyDescriptor prop = props[columnToProperty[i]]; - final Class propType = prop.getPropertyType(); + Class propType; + if (prop instanceof IndexedPropertyDescriptor) { + propType = ((IndexedPropertyDescriptor) prop).getIndexedPropertyType(); + } else { + propType = prop.getPropertyType(); + } Object value = null; if (propType != null) {