private ClassLoader createParentClassLoader(ClassLoader classLoader, URI id) { MultiParentClassLoader parentClassLoader = new MultiParentClassLoader(id, classLoader); // we need to make user and web container extensions available for JSP compilation parentClassLoader.addParent(getClass().getClassLoader()); return parentClassLoader; }
public void updateClassLoader(Class<?> seiClass) { ClassLoader seiClassLoader = seiClass.getClassLoader(); ClassLoader extensionClassLoader = getClass().getClassLoader(); if (seiClassLoader instanceof MultiParentClassLoader) { MultiParentClassLoader multiParentClassLoader = (MultiParentClassLoader) seiClassLoader; if (!multiParentClassLoader.getParents().contains(extensionClassLoader)) { multiParentClassLoader.addParent(extensionClassLoader); } } } }
public void updateClassLoader(Class<?> seiClass) { ClassLoader seiClassLoader = seiClass.getClassLoader(); ClassLoader extensionClassLoader = getClass().getClassLoader(); if (seiClassLoader instanceof MultiParentClassLoader) { MultiParentClassLoader multiParentClassLoader = (MultiParentClassLoader) seiClassLoader; if (!multiParentClassLoader.getParents().contains(extensionClassLoader)) { multiParentClassLoader.addParent(extensionClassLoader); } } } }
private ClassLoader createParentClassLoader(ClassLoader classLoader, URI id) { MultiParentClassLoader parentClassLoader = new MultiParentClassLoader(id, classLoader); // we need to make user and web container extensions available for JSP compilation parentClassLoader.addParent(getClass().getClassLoader()); return parentClassLoader; }
@Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { Thread currentThread = Thread.currentThread(); ClassLoader oldCl = currentThread.getContextClassLoader(); try { String requestUri = request.getRequestURI(); ClassLoader classLoader = classLoaders.get(requestUri); if (classLoader instanceof MultiParentClassLoader) { MultiParentClassLoader mpcl = (MultiParentClassLoader) classLoader; mpcl.addParent(getClass().getClassLoader()); } currentThread.setContextClassLoader(getClass().getClassLoader()); super.service(request, response); } finally { currentThread.setContextClassLoader(oldCl); } }
/** * Make Spring classes available to the contribution classloader. This is required since user classes may extend Spring classes. * * @param classLoader the application classloader. */ private void updateClassLoader(ClassLoader classLoader) { if (!(classLoader instanceof MultiParentClassLoader)) { return; } MultiParentClassLoader loader = (MultiParentClassLoader) classLoader; ClassLoader springClassLoader = getClass().getClassLoader(); for (ClassLoader parent : loader.getParents()) { if (parent == springClassLoader) { return; } } loader.addParent(springClassLoader); }
/** * Make Spring classes available to the contribution classloader. This is required since user classes may extend Spring classes. * * @param classLoader the application classloader. */ private void updateClassLoader(ClassLoader classLoader) { if (!(classLoader instanceof MultiParentClassLoader)) { return; } MultiParentClassLoader loader = (MultiParentClassLoader) classLoader; ClassLoader springClassLoader = getClass().getClassLoader(); for (ClassLoader parent : loader.getParents()) { if (parent == springClassLoader) { return; } } loader.addParent(springClassLoader); }
/** * Make Spring classes available to the contribution classloader. This is required since user classes may extend Spring classes. * * @param classLoader the application classloader. */ private void updateClassLoader(ClassLoader classLoader) { if (!(classLoader instanceof MultiParentClassLoader)) { return; } MultiParentClassLoader loader = (MultiParentClassLoader) classLoader; ClassLoader springClassLoader = getClass().getClassLoader(); for (ClassLoader parent : loader.getParents()) { if (parent == springClassLoader) { return; } } loader.addParent(springClassLoader); }
public void build(MultiParentClassLoader source, PhysicalClassLoaderWireDefinition wireDefinition) { URI uri = wireDefinition.getTargetClassLoader(); ClassLoader target = registry.getClassLoader(uri); if (target == null) { throw new AssertionError("Target classloader not found: " + uri); } String packageName = wireDefinition.getPackageName(); if (packageName != null) { ClassLoader filter = new ClassLoaderWireFilter(target, packageName); source.addParent(filter); } else { source.addParent(target); } } }
public ClassLoader getNewTempClassLoader() { if (!(classLoader instanceof MultiParentClassLoader)) { return null; } MultiParentClassLoader original = (MultiParentClassLoader) classLoader; MultiParentClassLoader newClassLoader = new MultiParentClassLoader(URI.create("f3-temp"), original.getParent()); for (ClassLoader parent : original.getParents()) { newClassLoader.addParent(parent); } for (URL url : original.getURLs()) { newClassLoader.addURL(url); } return newClassLoader; }
public ClassLoader getNewTempClassLoader() { if (!(classLoader instanceof MultiParentClassLoader)) { return null; } MultiParentClassLoader original = (MultiParentClassLoader) classLoader; MultiParentClassLoader newClassLoader = new MultiParentClassLoader(URI.create("f3-temp"), original.getParent()); for (ClassLoader parent : original.getParents()) { newClassLoader.addParent(parent); } for (URL url : original.getURLs()) { newClassLoader.addURL(url); } return newClassLoader; }
public ClassLoader getNewTempClassLoader() { if (!(classLoader instanceof MultiParentClassLoader)) { return null; } MultiParentClassLoader original = (MultiParentClassLoader) classLoader; MultiParentClassLoader newClassLoader = new MultiParentClassLoader(URI.create("f3-temp"), original.getParent()); for (ClassLoader parent : original.getParents()) { newClassLoader.addParent(parent); } for (URL url : original.getURLs()) { newClassLoader.addURL(url); } return newClassLoader; }
ClassLoader extensionCl = getClass().getClassLoader(); if (!multiParentClassLoader.getParents().contains(extensionCl)) { multiParentClassLoader.addParent(extensionCl);
mpcl.addParent(getClass().getClassLoader());
ClassLoader extensionCl = getClass().getClassLoader(); if (!multiParentClassLoader.getParents().contains(extensionCl)) { multiParentClassLoader.addParent(extensionCl);
ClassLoader springClassLoader = getClass().getClassLoader(); if (!cl.getParents().contains(springClassLoader)) { cl.addParent(springClassLoader);
ClassLoader springClassLoader = getClass().getClassLoader(); if (!cl.getParents().contains(springClassLoader)) { cl.addParent(springClassLoader);
ClassLoader springClassLoader = getClass().getClassLoader(); if (!cl.getParents().contains(springClassLoader)) { cl.addParent(springClassLoader);