The ClassEditor (PropertyEditor) does not support using the same ClassLoader that is set into any ApplicationContext (particularly RefreshableWebApplicationContext).
It calls ClassUtils.forName(String) instead of ClassUtils.forName(String, ClassLoader).
Long story short, I can't rely on the current thread's context ClassLoader to be set correctly.
Ideally this editor would be ApplicationContextAware and cast to AbstractApplicationContext and then call getClassLoader() to resolve the ClassLoader. In the meantime, I can create my own to do this and register it thru a CustomEditorConfigurer. When I do this, it does not seem to be getting called. Any ideas why?
Am I going to run into other areas of Spring that require current context ClassLoader?


Reply With Quote
