Closed
Description
Jacek Obarymski opened SPR-11494 and commented
The following test case (see ):
ExpressionParser parser = new SpelExpressionParser();
Expression exp = parser.parseExpression("T(java.util.Arrays).asList('a','b')");
List<String> list = (List<String>) exp.getValue();
assertThat(list.size(), is(2));
throws an exception:
java.lang.IllegalArgumentException: Final expected argument should be array type (the varargs parameter)
at org.springframework.util.Assert.isTrue(Assert.java:65)
at org.springframework.expression.spel.support.ReflectionHelper.compareArgumentsVarargs(ReflectionHelper.java:144)
at org.springframework.expression.spel.support.ReflectiveMethodResolver.resolve(ReflectiveMethodResolver.java:154)
at org.springframework.expression.spel.ast.MethodReference.findAccessorForMethod(MethodReference.java:189)
at org.springframework.expression.spel.ast.MethodReference.getValueInternal(MethodReference.java:118)
at org.springframework.expression.spel.ast.MethodReference.access$100(MethodReference.java:44)
at org.springframework.expression.spel.ast.MethodReference$MethodValueRef.getValue(MethodReference.java:258)
at org.springframework.expression.spel.ast.CompoundExpression.getValueInternal(CompoundExpression.java:84)
at org.springframework.expression.spel.ast.SpelNodeImpl.getValue(SpelNodeImpl.java:103)
at org.springframework.expression.spel.standard.SpelExpression.getValue(SpelExpression.java:68)
Affects: 4.0.2