instance = StructNew(); instance.static.uuid = "A0608BEC-0AEB-B46A-0E1E1EC5F3CE7C9C"; var iterator = arguments.loadPaths.iterator(); var file = 0; var classLoader = 0; var networkClassLoaderClass = 0; var networkClassLoaderProxy = 0; initUseJavaProxyCFC(); if(arguments.loadColdFusionClassPath) { //arguments.parentClassLoader = createObject("java", "java.lang.Thread").currentThread().getContextClassLoader(); //can't use above, as doesn't work in some... things arguments.parentClassLoader = getPageContext().getClass().getClassLoader(); //arguments.parentClassLoader = createObject("java", "java.lang.ClassLoader").getSystemClassLoader(); //can't use the above, it doesn't have the CF stuff in it. } ensureNetworkClassLoaderOnServerScope(); //classLoader = createObject("java", "com.compoundtheory.classloader0.NetworkClassLoader").init(); networkClassLoaderClass = getServerURLClassLoader().loadClass("com.compoundtheory.classloader.NetworkClassLoader"); networkClassLoaderProxy = createJavaProxy(networkClassLoaderClass); if(isObject(arguments.parentClassLoader)) { classLoader = networkClassLoaderProxy.init(arguments.parentClassLoader); } else { classLoader = networkClassLoaderProxy.init(); } while(iterator.hasNext()) { file = createObject("java", "java.io.File").init(iterator.next()); if(NOT file.exists()) { throw("PathNotFoundException", "The path you have specified could not be found", file.getAbsolutePath() & " does not exist"); } classLoader.addUrl(file.toURL()); } //pass in the system loader setURLClassLoader(classLoader); return this; var class = getURLClassLoader().loadClass(arguments.className); return createJavaProxy(class); var Class = createObject("java", "java.lang.Class"); var Array = createObject("java", "java.lang.reflect.Array"); var jars = queryJars(); var iterator = jars.iterator(); var file = 0; var urls = Array.newInstance(Class.forName("java.net.URL"), ArrayLen(jars)); var counter = 0; var urlClassLoader = 0; var key = instance.static.uuid & "." & getVersion(); //server scope uuid //we have it already? escape. if(StructKeyExists(server, key)) { return; } while(iterator.hasNext()) { Array.set(urls, counter, createObject("java", "java.io.File").init(iterator.next()).toURL()); counter = counter + 1; } urlClassLoader = createObject("java", "java.net.URLClassLoader").init(urls); //put it on the server scope server[key] = urlClassLoader; if(getUseJavaProxyCFC()) { return createObject("component", "JavaProxy")._init(arguments.class); } return createObject("java", "coldfusion.runtime.java.JavaProxy").init(arguments.class); setUseJavaProxyCFC(false); try { createObject("java", "coldfusion.runtime.java.JavaProxy"); } catch(Object exc) { setUseJavaProxyCFC(true); } var qJars = 0; //the path to my jar library var path = getDirectoryFromPath(getMetaData(this).path) & "lib/"; var jarList = ""; var aJars = ArrayNew(1); var libName = 0; libName = ListGetAt(name, 1, "-"); //let's not use the lib's that have the same name, but a lower datestamp if(NOT ListFind(jarList, libName)) { ArrayAppend(aJars, path & "/" & name); jarList = ListAppend(jarList, libName); }