@Override protected ClassLoader getFallbackClassLoader() throws IOException { return RMIClassLoader.getClassLoader(this.codebaseUrl); }
@Override protected ClassLoader getFallbackClassLoader() throws IOException { return RMIClassLoader.getClassLoader(this.codebaseUrl); }
@Override protected ClassLoader getFallbackClassLoader() throws IOException { return RMIClassLoader.getClassLoader(this.codebaseUrl); }
protected Class resolveProxyClass(String[] interfaces) throws IOException, ClassNotFoundException { Object annotation = readLocation(); ClassLoader loader; if (annotation != null && (annotation instanceof String)) { String location = (String) annotation; loader = RMIClassLoader.getClassLoader(location); } else { loader = RMIClassLoader.getClassLoader(null); } Class[] classObjs = new Class[interfaces.length]; for (int i = 0; i < interfaces.length; i++) { classObjs[i] = Class.forName(interfaces[i], false, loader); } return java.lang.reflect.Proxy.getProxyClass(loader, classObjs); }
public Object run() { ClassLoader bcl = base.getClassLoader(); if (bcl == null) { return null; } ClassLoader pcl = bcl.getParent(); Thread t = Thread.currentThread(); ClassLoader ccl = t.getContextClassLoader(); boolean proper = false; try { t.setContextClassLoader(pcl); proper = (RMIClassLoader.getClassLoader(bcb) == bcl); } catch (MalformedURLException e) { } finally { t.setContextClassLoader(ccl); } if (proper) { try { return Proxy.newProxyInstance( pcl, new Class[]{ProxyTrust.class, RemoteMethodControl.class}, ih); } catch (IllegalArgumentException e) { } } return null; } });
return RMIClassLoader.getClassLoader(codebase);