Browse Source

Properly return loaded type even if identified as reloadable

Closes gh-31668
pull/31694/head
Juergen Hoeller 2 years ago
parent
commit
8921be18de
  1. 5
      spring-expression/src/main/java/org/springframework/expression/spel/support/StandardTypeLocator.java

5
spring-expression/src/main/java/org/springframework/expression/spel/support/StandardTypeLocator.java

@ -120,9 +120,10 @@ public class StandardTypeLocator implements TypeLocator { @@ -120,9 +120,10 @@ public class StandardTypeLocator implements TypeLocator {
return cachedType;
}
Class<?> loadedType = loadType(typeName);
if (loadedType != null &&
!(this.classLoader instanceof SmartClassLoader scl && scl.isClassReloadable(loadedType))) {
if (loadedType != null) {
if (!(this.classLoader instanceof SmartClassLoader scl && scl.isClassReloadable(loadedType))) {
this.typeCache.put(typeName, loadedType);
}
return loadedType;
}
throw new SpelEvaluationException(SpelMessage.TYPE_NOT_FOUND, typeName);

Loading…
Cancel
Save