Author: dwoods
Date: Fri Aug 24 14:24:09 2007
New Revision: 569528
URL: http://svn.apache.org/viewvc?rev=569528&view=rev
Log:
GERONIMO-3421 ClassFinder classloader problems cause deployer to hang. Toby, thanks for the
patch.
Modified:
geronimo/server/branches/2.0/modules/geronimo-web-2.5-builder/src/main/java/org/apache/geronimo/web25/deployment/AbstractWebModuleBuilder.java
Modified: geronimo/server/branches/2.0/modules/geronimo-web-2.5-builder/src/main/java/org/apache/geronimo/web25/deployment/AbstractWebModuleBuilder.java
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.0/modules/geronimo-web-2.5-builder/src/main/java/org/apache/geronimo/web25/deployment/AbstractWebModuleBuilder.java?rev=569528&r1=569527&r2=569528&view=diff
==============================================================================
--- geronimo/server/branches/2.0/modules/geronimo-web-2.5-builder/src/main/java/org/apache/geronimo/web25/deployment/AbstractWebModuleBuilder.java
(original)
+++ geronimo/server/branches/2.0/modules/geronimo-web-2.5-builder/src/main/java/org/apache/geronimo/web25/deployment/AbstractWebModuleBuilder.java
Fri Aug 24 14:24:09 2007
@@ -793,7 +793,17 @@
addClass(classes, clas);
}
- return new ClassFinder(classes);
+ // see https://issues.apache.org/jira/browse/GERONIMO-3421 .
+ // if the user has botched her classloader config (perhaps by
+ // not including a jar that her app needs) then ClassFinder
+ // will throw NoClassDefFoundError. we want to indicate that
+ // it's the user's error and provide a little context to help
+ // her fix it.
+ try {
+ return new ClassFinder(classes);
+ } catch (NoClassDefFoundError e) {
+ throw new DeploymentException(webModule.getName() + " classloader can't find
" + e.getMessage(), e);
+ }
}
private void addClass(List<Class> classes, Class<?> clas) {
|