From d3e0f4dd912db2b4244a116b4d36f17dc4dbb0c8 Mon Sep 17 00:00:00 2001 From: Juergen Hoeller Date: Sun, 7 Jan 2018 23:20:09 +0100 Subject: [PATCH] Consider enum subclasses as simple value types as well Issue: SPR-16278 --- .../src/main/java/org/springframework/beans/BeanUtils.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/spring-beans/src/main/java/org/springframework/beans/BeanUtils.java b/spring-beans/src/main/java/org/springframework/beans/BeanUtils.java index e5f10bf1ca..3d3cc32a7f 100644 --- a/spring-beans/src/main/java/org/springframework/beans/BeanUtils.java +++ b/spring-beans/src/main/java/org/springframework/beans/BeanUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2017 the original author or authors. + * Copyright 2002-2018 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -561,13 +561,14 @@ public abstract class BeanUtils { /** * Check if the given type represents a "simple" value type: - * a primitive, a String or other CharSequence, a Number, a Date, + * a primitive, an enum, a String or other CharSequence, a Number, a Date, * a URI, a URL, a Locale or a Class. * @param clazz the type to check * @return whether the given type represents a "simple" value type */ public static boolean isSimpleValueType(Class clazz) { - return (ClassUtils.isPrimitiveOrWrapper(clazz) || clazz.isEnum() || + return (ClassUtils.isPrimitiveOrWrapper(clazz) || + Enum.class.isAssignableFrom(clazz) || CharSequence.class.isAssignableFrom(clazz) || Number.class.isAssignableFrom(clazz) || Date.class.isAssignableFrom(clazz) ||