Return-Path: Delivered-To: apmail-geronimo-scm-archive@www.apache.org Received: (qmail 33821 invoked from network); 29 Nov 2009 20:26:34 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 29 Nov 2009 20:26:34 -0000 Received: (qmail 76274 invoked by uid 500); 29 Nov 2009 20:26:34 -0000 Delivered-To: apmail-geronimo-scm-archive@geronimo.apache.org Received: (qmail 76206 invoked by uid 500); 29 Nov 2009 20:26:34 -0000 Mailing-List: contact scm-help@geronimo.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: Reply-To: dev@geronimo.apache.org List-Id: Delivered-To: mailing list scm@geronimo.apache.org Received: (qmail 76197 invoked by uid 99); 29 Nov 2009 20:26:34 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 29 Nov 2009 20:26:34 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 29 Nov 2009 20:26:31 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 7234023888D1; Sun, 29 Nov 2009 20:26:10 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r885264 - /geronimo/external/trunk/tomcat-parent-6.0.20/jasper/src/main/java/org/apache/jasper/compiler/JspRuntimeContext.java Date: Sun, 29 Nov 2009 20:26:10 -0000 To: scm@geronimo.apache.org From: djencks@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20091129202610.7234023888D1@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: djencks Date: Sun Nov 29 20:26:10 2009 New Revision: 885264 URL: http://svn.apache.org/viewvc?rev=885264&view=rev Log: GERONIMO-4962 don't assume URLClassLoader Modified: geronimo/external/trunk/tomcat-parent-6.0.20/jasper/src/main/java/org/apache/jasper/compiler/JspRuntimeContext.java Modified: geronimo/external/trunk/tomcat-parent-6.0.20/jasper/src/main/java/org/apache/jasper/compiler/JspRuntimeContext.java URL: http://svn.apache.org/viewvc/geronimo/external/trunk/tomcat-parent-6.0.20/jasper/src/main/java/org/apache/jasper/compiler/JspRuntimeContext.java?rev=885264&r1=885263&r2=885264&view=diff ============================================================================== --- geronimo/external/trunk/tomcat-parent-6.0.20/jasper/src/main/java/org/apache/jasper/compiler/JspRuntimeContext.java (original) +++ geronimo/external/trunk/tomcat-parent-6.0.20/jasper/src/main/java/org/apache/jasper/compiler/JspRuntimeContext.java Sun Nov 29 20:26:10 2009 @@ -110,11 +110,9 @@ this.options = options; // Get the parent class loader - parentClassLoader = - (URLClassLoader) Thread.currentThread().getContextClassLoader(); + parentClassLoader = Thread.currentThread().getContextClassLoader(); if (parentClassLoader == null) { - parentClassLoader = - (URLClassLoader)this.getClass().getClassLoader(); + parentClassLoader = this.getClass().getClassLoader(); } if (log.isDebugEnabled()) { @@ -154,7 +152,7 @@ */ private ServletContext context; private Options options; - private URLClassLoader parentClassLoader; + private ClassLoader parentClassLoader; private PermissionCollection permissionCollection; private CodeSource codeSource; private String classpath; @@ -222,7 +220,7 @@ * * @return URLClassLoader parent */ - public URLClassLoader getParentClassLoader() { + public ClassLoader getParentClassLoader() { return parentClassLoader; } @@ -325,22 +323,24 @@ */ private void initClassPath() { - URL [] urls = parentClassLoader.getURLs(); - StringBuffer cpath = new StringBuffer(); String sep = System.getProperty("path.separator"); + StringBuilder cpath = new StringBuilder(); + if (parentClassLoader instanceof URLClassLoader) { + URL [] urls = ((URLClassLoader)parentClassLoader).getURLs(); + + for(int i = 0; i < urls.length; i++) { + // Tomcat 4 can use URL's other than file URL's, + // a protocol other than file: will generate a + // bad file system path, so only add file: + // protocol URL's to the classpath. - for(int i = 0; i < urls.length; i++) { - // Tomcat 4 can use URL's other than file URL's, - // a protocol other than file: will generate a - // bad file system path, so only add file: - // protocol URL's to the classpath. - - if( urls[i].getProtocol().equals("file") ) { - cpath.append((String)urls[i].getFile()+sep); + if( urls[i].getProtocol().equals("file") ) { + cpath.append(urls[i].getFile() +sep); + } } - } + } - cpath.append(options.getScratchDir() + sep); + cpath.append(options.getScratchDir()).append(sep); String cp = (String) context.getAttribute(Constants.SERVLET_CLASSPATH); if (cp == null || cp.equals("")) { @@ -409,7 +409,7 @@ "accessClassInPackage.org.apache.jasper.runtime") ); if (parentClassLoader instanceof URLClassLoader) { - URL [] urls = parentClassLoader.getURLs(); + URL [] urls = ((URLClassLoader)parentClassLoader).getURLs(); String jarUrl = null; String jndiUrl = null; for (int i=0; i