Можно добавить загрузчик классов в текущем контексте веб-приложения (context.xml):
<Context>
<Loader loaderClass = "gr.nevma.cccl.CompilingClassLoader"/>
</Context>
И затем создать загрузчик классов, например:
package package gr.nevma.cccl;
import ...
public class CompilingClassLoader extends WebappClassLoader {
public CompilingClassLoader ( ClassLoader parentClassLoader ) {
super( parentClassLoader );
}
public Class<?> loadClass ( String className, boolean resolve ) throws ClassNotFoundException {
Class<?> theClass = null;
// Do you stuff here
return theClass;
}
}
Но это только поможетесли кто-то хочет иметь возможность явно загружать классы из самого загрузчика классов, вызывая ClassLoader :: loadClass (...).Это не поможет при компиляции JSP Джаспером.Это означает, что, когда Jasper попытается скомпилировать JSP, использующие классы, которые должны были быть загружены этим загрузчиком классов, компиляция завершится неудачей, потому что Jasper даже не попросит этот загрузчик классов загрузить какие-либо классы вообще.Таким образом, автоматическая загрузка и перезагрузка классов может быть достигнута, но в некотором роде - вручную.Эти классы могут быть единообразно использованы во всем веб-приложении, то есть на страницах JSP!