Attaching a patch that fixes an intermittent error (that occurs when an attempt is made to define a package that has already been defined). I noticed this when running a multi-threaded test.
----- Root Cause ----- java.lang.IllegalArgumentException: Servlet22.S05_Request at java.lang.ClassLoader.definePackage(ClassLoader.java:1151) at java.net.URLClassLoader.definePackage(URLClassLoader.java:310) at org.apache.catalina.loader.WebappClassLoader.findClassInternal(Webapp ClassLoader.java:1647) at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoa der.java:970) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoa der.java:1409) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoa der.java:1287) at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper. java:870) at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.jav a:658) Arvind
Index: WebappClassLoader.java =================================================================== RCS file: /home/cvspublic/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/loader/WebappClassLoader.java,v retrieving revision 1.15.2.11 diff -u -r1.15.2.11 WebappClassLoader.java --- WebappClassLoader.java 18 Feb 2002 05:22:07 -0000 1.15.2.11 +++ WebappClassLoader.java 18 Jul 2002 22:34:45 -0000 @@ -1599,15 +1599,18 @@ if (packageName != null) { - pkg = getPackage(packageName); + synchronized (loaderPC) { + pkg = getPackage(packageName); - // Define the package (if null) - if (pkg == null) { - if (entry.manifest == null) { - definePackage(packageName, null, null, null, null, null, - null, null); - } else { - definePackage(packageName, entry.manifest, entry.source); + // Define the package (if null) + if (pkg == null) { + if (entry.manifest == null) { + definePackage(packageName, null, null, null, null, + null, null, null); + } else { + definePackage(packageName, entry.manifest, + entry.source); + } } }
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>