Prior to this change, SpEL was capable of handling getter methods for
property names having a lowercase first letter and uppercase second
letter such as:
public String getiD() { ... }
However, setters with the same naming arrangement were not supported,
e.g.:
public void setiD() { ... }
This commit ensures that setters and getters are treated by SpEL equally
in this regard, such that "iD"-style property names may be used anywhere
within SpEL expressions.
Issue: SPR-10122, SPR-9123
@ -311,15 +311,10 @@ public class ReflectivePropertyAccessor implements PropertyAccessor {
@@ -311,15 +311,10 @@ public class ReflectivePropertyAccessor implements PropertyAccessor {
@ -327,7 +322,7 @@ public class ReflectivePropertyAccessor implements PropertyAccessor {
@@ -327,7 +322,7 @@ public class ReflectivePropertyAccessor implements PropertyAccessor {
@ -343,7 +338,7 @@ public class ReflectivePropertyAccessor implements PropertyAccessor {
@@ -343,7 +338,7 @@ public class ReflectivePropertyAccessor implements PropertyAccessor {
@ -353,6 +348,15 @@ public class ReflectivePropertyAccessor implements PropertyAccessor {
@@ -353,6 +348,15 @@ public class ReflectivePropertyAccessor implements PropertyAccessor {
@ -329,6 +329,10 @@ public class ReflectionHelperTests extends ExpressionTestCase {
@@ -329,6 +329,10 @@ public class ReflectionHelperTests extends ExpressionTestCase {
// note: "Id" is not a valid JavaBean name, nevertheless it is treated as "id"
@ -419,6 +423,7 @@ public class ReflectionHelperTests extends ExpressionTestCase {
@@ -419,6 +423,7 @@ public class ReflectionHelperTests extends ExpressionTestCase {
@ -434,6 +439,14 @@ public class ReflectionHelperTests extends ExpressionTestCase {
@@ -434,6 +439,14 @@ public class ReflectionHelperTests extends ExpressionTestCase {