File tree 1 file changed +6
-2
lines changed
spring-expression/src/main/java/org/springframework/expression/spel/ast
1 file changed +6
-2
lines changed Original file line number Diff line number Diff line change @@ -355,8 +355,11 @@ else if (target instanceof Collection<?> collection) {
355
355
356
356
@ Override
357
357
public boolean isCompilable () {
358
+ if (this .exitTypeDescriptor == null ) {
359
+ return false ;
360
+ }
358
361
if (this .indexedType == IndexedType .ARRAY ) {
359
- return (this .exitTypeDescriptor != null && this . arrayTypeDescriptor != null );
362
+ return (this .arrayTypeDescriptor != null );
360
363
}
361
364
SpelNodeImpl index = this .children [0 ];
362
365
if (this .indexedType == IndexedType .LIST ) {
@@ -792,10 +795,11 @@ public TypedValue getValue() {
792
795
this .evaluationContext , this .targetObject , this .name );
793
796
}
794
797
updatePropertyReadState (accessor , this .name , targetType );
798
+ TypedValue result = accessor .read (this .evaluationContext , this .targetObject , this .name );
795
799
if (accessor instanceof CompilablePropertyAccessor compilablePropertyAccessor ) {
796
800
setExitTypeDescriptor (CodeFlow .toDescriptor (compilablePropertyAccessor .getPropertyType ()));
797
801
}
798
- return accessor . read ( this . evaluationContext , this . targetObject , this . name ) ;
802
+ return result ;
799
803
}
800
804
}
801
805
}
You can’t perform that action at this time.
0 commit comments