in src/main/java/org/apache/commons/dbutils/BeanProcessor.java [272:290]
private boolean matchesPrimitive(final Class<?> targetType, final Class<?> valueType) {
if (!targetType.isPrimitive()) {
return false;
}
try {
// see if there is a "TYPE" field. This is present for primitive wrappers.
final Field typeField = valueType.getField("TYPE");
final Object primitiveValueType = typeField.get(valueType);
if (targetType == primitiveValueType) {
return true;
}
} catch (final NoSuchFieldException | IllegalAccessException ignored) {
// an inaccessible TYPE field is a good sign that we're not working with a primitive wrapper.
// nothing to do. we can't match for compatibility
}
return false;
}