You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by ri...@apache.org on 2007/06/21 14:12:29 UTC

svn commit: r549455 - in /geronimo/server/trunk/modules: geronimo-corba-builder/src/main/java/org/apache/geronimo/corba/deployment/ geronimo-corba-builder/src/main/java/org/apache/geronimo/corba/security/config/css/ geronimo-corba-builder/src/main/java...

Author: rickmcguire
Date: Thu Jun 21 05:12:27 2007
New Revision: 549455

URL: http://svn.apache.org/viewvc?view=rev&rev=549455
Log:
GERONIMO-3246 Cleanup exception handling so stack traces for first failures are not discarded.


Modified:
    geronimo/server/trunk/modules/geronimo-corba-builder/src/main/java/org/apache/geronimo/corba/deployment/OpenEjbCorbaRefBuilder.java
    geronimo/server/trunk/modules/geronimo-corba-builder/src/main/java/org/apache/geronimo/corba/security/config/css/CSSConfigEditor.java
    geronimo/server/trunk/modules/geronimo-corba-builder/src/main/java/org/apache/geronimo/corba/security/config/tss/TSSConfigEditor.java
    geronimo/server/trunk/modules/geronimo-core/src/main/java/org/apache/geronimo/pool/ThreadPool.java
    geronimo/server/trunk/modules/geronimo-deploy-jsr88/src/main/java/org/apache/geronimo/deployment/plugin/ConfigIDExtractor.java
    geronimo/server/trunk/modules/geronimo-deploy-jsr88/src/main/java/org/apache/geronimo/deployment/plugin/factories/DeploymentFactoryWithKernel.java
    geronimo/server/trunk/modules/geronimo-deploy-jsr88/src/main/java/org/apache/geronimo/deployment/plugin/local/RedeployCommand.java
    geronimo/server/trunk/modules/geronimo-deploy-tool/src/main/java/org/apache/geronimo/deployment/cli/CommandListConfigurations.java
    geronimo/server/trunk/modules/geronimo-deploy-tool/src/main/java/org/apache/geronimo/deployment/cli/CommandListModules.java
    geronimo/server/trunk/modules/geronimo-deploy-tool/src/main/java/org/apache/geronimo/deployment/cli/CommandRedeploy.java
    geronimo/server/trunk/modules/geronimo-deploy-tool/src/main/java/org/apache/geronimo/deployment/cli/DeployUtils.java
    geronimo/server/trunk/modules/geronimo-deploy-tool/src/main/java/org/apache/geronimo/deployment/cli/ServerConnection.java
    geronimo/server/trunk/modules/geronimo-deployment/src/main/java/org/apache/geronimo/deployment/DeploymentContext.java
    geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/EARConfigBuilder.java
    geronimo/server/trunk/modules/geronimo-j2ee/src/main/java/org/apache/geronimo/j2ee/annotation/Holder.java
    geronimo/server/trunk/modules/geronimo-jasper-builder/src/main/java/org/apache/geronimo/jasper/deployment/JspModuleBuilderExtension.java

Modified: geronimo/server/trunk/modules/geronimo-corba-builder/src/main/java/org/apache/geronimo/corba/deployment/OpenEjbCorbaRefBuilder.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-corba-builder/src/main/java/org/apache/geronimo/corba/deployment/OpenEjbCorbaRefBuilder.java?view=diff&rev=549455&r1=549454&r2=549455
==============================================================================
--- geronimo/server/trunk/modules/geronimo-corba-builder/src/main/java/org/apache/geronimo/corba/deployment/OpenEjbCorbaRefBuilder.java (original)
+++ geronimo/server/trunk/modules/geronimo-corba-builder/src/main/java/org/apache/geronimo/corba/deployment/OpenEjbCorbaRefBuilder.java Thu Jun 21 05:12:27 2007
@@ -136,7 +136,7 @@
                 try {
                     module.getEarContext().findGBean(cssBean);
                 } catch (GBeanNotFoundException e) {
-                    throw new DeploymentException("Could not find css bean matching " + cssBean + " from configuration " + module.getConfigId());
+                    throw new DeploymentException("Could not find css bean matching " + cssBean + " from configuration " + module.getConfigId(), e);
                 }
 
                 // create ref
@@ -152,12 +152,12 @@
         try {
             assureInterface(remote, "javax.ejb.EJBObject", "Remote", cl);
         } catch (DeploymentException e) {
-            throw new DeploymentException("Error processing 'remote' element for EJB Reference '" + refName + "' for module '" + moduleURI + "': " + e.getMessage());
+            throw new DeploymentException("Error processing 'remote' element for EJB Reference '" + refName + "' for module '" + moduleURI + "': " + e.getMessage(), e);
         }
         try {
             assureInterface(home, "javax.ejb.EJBHome", "Home", cl);
         } catch (DeploymentException e) {
-            throw new DeploymentException("Error processing 'home' element for EJB Reference '" + refName + "' for module '" + moduleURI + "': " + e.getMessage());
+            throw new DeploymentException("Error processing 'home' element for EJB Reference '" + refName + "' for module '" + moduleURI + "': " + e.getMessage(), e);
         }
     }
 

Modified: geronimo/server/trunk/modules/geronimo-corba-builder/src/main/java/org/apache/geronimo/corba/security/config/css/CSSConfigEditor.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-corba-builder/src/main/java/org/apache/geronimo/corba/security/config/css/CSSConfigEditor.java?view=diff&rev=549455&r1=549454&r2=549455
==============================================================================
--- geronimo/server/trunk/modules/geronimo-corba-builder/src/main/java/org/apache/geronimo/corba/security/config/css/CSSConfigEditor.java (original)
+++ geronimo/server/trunk/modules/geronimo-corba-builder/src/main/java/org/apache/geronimo/corba/security/config/css/CSSConfigEditor.java Thu Jun 21 05:12:27 2007
@@ -72,7 +72,7 @@
         try {
             XmlBeansUtil.validateDD(css);
         } catch (XmlException e) {
-            throw new DeploymentException(e);
+            throw new DeploymentException("Error parsing CSS configuration", e);
         }
 
         CSSConfig cssConfig = new CSSConfig();
@@ -151,7 +151,7 @@
             try {
                 principalClass = ClassLoading.loadClass(principalClassName, cl);
             } catch (ClassNotFoundException e) {
-                throw new DeploymentException("Could not load principal class");
+                throw new DeploymentException("Could not load principal class", e);
             }
             String domainName = principal.getDomain();
             String realmName = null;

Modified: geronimo/server/trunk/modules/geronimo-corba-builder/src/main/java/org/apache/geronimo/corba/security/config/tss/TSSConfigEditor.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-corba-builder/src/main/java/org/apache/geronimo/corba/security/config/tss/TSSConfigEditor.java?view=diff&rev=549455&r1=549454&r2=549455
==============================================================================
--- geronimo/server/trunk/modules/geronimo-corba-builder/src/main/java/org/apache/geronimo/corba/security/config/tss/TSSConfigEditor.java (original)
+++ geronimo/server/trunk/modules/geronimo-corba-builder/src/main/java/org/apache/geronimo/corba/security/config/tss/TSSConfigEditor.java Thu Jun 21 05:12:27 2007
@@ -82,7 +82,7 @@
         try {
             XmlBeansUtil.validateDD(tss);
         } catch (XmlException e) {
-            throw new DeploymentException(e);
+            throw new DeploymentException("Error parsing TSS configuration", e);
         }
 
         TSSConfig tssConfig = new TSSConfig();

Modified: geronimo/server/trunk/modules/geronimo-core/src/main/java/org/apache/geronimo/pool/ThreadPool.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-core/src/main/java/org/apache/geronimo/pool/ThreadPool.java?view=diff&rev=549455&r1=549454&r2=549455
==============================================================================
--- geronimo/server/trunk/modules/geronimo-core/src/main/java/org/apache/geronimo/pool/ThreadPool.java (original)
+++ geronimo/server/trunk/modules/geronimo-core/src/main/java/org/apache/geronimo/pool/ThreadPool.java Thu Jun 21 05:12:27 2007
@@ -73,7 +73,7 @@
         try {
             this.objectName = ObjectName.getInstance(objectName);
         } catch (MalformedObjectNameException e) {
-            throw new IllegalStateException("Bad object name injected: " + e.getMessage());
+            throw new IllegalStateException("Bad object name injected: " + e.getMessage(), e);
         }
 
         executor = p;

Modified: geronimo/server/trunk/modules/geronimo-deploy-jsr88/src/main/java/org/apache/geronimo/deployment/plugin/ConfigIDExtractor.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-deploy-jsr88/src/main/java/org/apache/geronimo/deployment/plugin/ConfigIDExtractor.java?view=diff&rev=549455&r1=549454&r2=549455
==============================================================================
--- geronimo/server/trunk/modules/geronimo-deploy-jsr88/src/main/java/org/apache/geronimo/deployment/plugin/ConfigIDExtractor.java (original)
+++ geronimo/server/trunk/modules/geronimo-deploy-jsr88/src/main/java/org/apache/geronimo/deployment/plugin/ConfigIDExtractor.java Thu Jun 21 05:12:27 2007
@@ -224,9 +224,9 @@
             }
             return handler.configId;
         } catch (ParserConfigurationException e) {
-            throw new IOException("Unable to read plan: "+e.getMessage());
+            throw (IOException)new IOException("Unable to read plan: "+e.getMessage()).initCause(e);
         } catch (SAXException e) {
-            throw new IOException("Unable to read plan: "+e.getMessage());
+            throw (IOException)new IOException("Unable to read plan: "+e.getMessage()).initCause(e);
         } finally {
             plan.close();
         }
@@ -241,7 +241,7 @@
         try {
             return FileUtils.isZipFile(file);
         } catch (IOException e) {
-            throw new DeploymentException("Unable to read file "+file.getAbsolutePath());
+            throw new DeploymentException("Unable to read file "+file.getAbsolutePath(), e);
         }
     }
 

Modified: geronimo/server/trunk/modules/geronimo-deploy-jsr88/src/main/java/org/apache/geronimo/deployment/plugin/factories/DeploymentFactoryWithKernel.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-deploy-jsr88/src/main/java/org/apache/geronimo/deployment/plugin/factories/DeploymentFactoryWithKernel.java?view=diff&rev=549455&r1=549454&r2=549455
==============================================================================
--- geronimo/server/trunk/modules/geronimo-deploy-jsr88/src/main/java/org/apache/geronimo/deployment/plugin/factories/DeploymentFactoryWithKernel.java (original)
+++ geronimo/server/trunk/modules/geronimo-deploy-jsr88/src/main/java/org/apache/geronimo/deployment/plugin/factories/DeploymentFactoryWithKernel.java Thu Jun 21 05:12:27 2007
@@ -57,7 +57,7 @@
                 ModuleConfigurer configurer = (ModuleConfigurer) kernel.getGBean(configurerName);
                 moduleConfigurers.add(configurer);
             } catch (GBeanNotFoundException e) {
-                throw new AssertionError("No gbean found for name returned in query : " + configurerName);
+                throw (AssertionError)new AssertionError("No gbean found for name returned in query : " + configurerName).initCause(e);
             }
         }
         return moduleConfigurers;

Modified: geronimo/server/trunk/modules/geronimo-deploy-jsr88/src/main/java/org/apache/geronimo/deployment/plugin/local/RedeployCommand.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-deploy-jsr88/src/main/java/org/apache/geronimo/deployment/plugin/local/RedeployCommand.java?view=diff&rev=549455&r1=549454&r2=549455
==============================================================================
--- geronimo/server/trunk/modules/geronimo-deploy-jsr88/src/main/java/org/apache/geronimo/deployment/plugin/local/RedeployCommand.java (original)
+++ geronimo/server/trunk/modules/geronimo-deploy-jsr88/src/main/java/org/apache/geronimo/deployment/plugin/local/RedeployCommand.java Thu Jun 21 05:12:27 2007
@@ -214,12 +214,12 @@
         } catch(InternalKernelException e) {
             Exception cause = (Exception)e.getCause();
             if(cause instanceof NoSuchConfigException) {
-                throw new IllegalStateException("Module "+configID+" is not installed!");
+                throw new IllegalStateException("Module "+configID+" is not installed!", cause);
             } else {
                 throw cause;
             }
         } catch (NoSuchConfigException e) {
-            throw new IllegalStateException("Module "+configID+" is not installed!");
+            throw new IllegalStateException("Module "+configID+" is not installed!", e);
         }
 
         doDeploy(target, false);

Modified: geronimo/server/trunk/modules/geronimo-deploy-tool/src/main/java/org/apache/geronimo/deployment/cli/CommandListConfigurations.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-deploy-tool/src/main/java/org/apache/geronimo/deployment/cli/CommandListConfigurations.java?view=diff&rev=549455&r1=549454&r2=549455
==============================================================================
--- geronimo/server/trunk/modules/geronimo-deploy-tool/src/main/java/org/apache/geronimo/deployment/cli/CommandListConfigurations.java (original)
+++ geronimo/server/trunk/modules/geronimo-deploy-tool/src/main/java/org/apache/geronimo/deployment/cli/CommandListConfigurations.java Thu Jun 21 05:12:27 2007
@@ -67,7 +67,7 @@
                 } catch (IOException e) {
                     throw new DeploymentException("Unable to list configurations", e);
                 } catch (FailedLoginException e) {
-                    throw new DeploymentException("Invalid login for Maven repository '"+repo+"'");
+                    throw new DeploymentException("Invalid login for Maven repository '"+repo+"'", e);
                 }
                 if (data == null) {
                     out.println();

Modified: geronimo/server/trunk/modules/geronimo-deploy-tool/src/main/java/org/apache/geronimo/deployment/cli/CommandListModules.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-deploy-tool/src/main/java/org/apache/geronimo/deployment/cli/CommandListModules.java?view=diff&rev=549455&r1=549454&r2=549455
==============================================================================
--- geronimo/server/trunk/modules/geronimo-deploy-tool/src/main/java/org/apache/geronimo/deployment/cli/CommandListModules.java (original)
+++ geronimo/server/trunk/modules/geronimo-deploy-tool/src/main/java/org/apache/geronimo/deployment/cli/CommandListModules.java Thu Jun 21 05:12:27 2007
@@ -68,7 +68,7 @@
         } catch (TargetException e) {
             throw new DeploymentException("Unable to query modules", e);
         } catch (IllegalStateException e) {
-            throw new DeploymentSyntaxException(e.getMessage());
+            throw new DeploymentSyntaxException(e.getMessage(), e);
         }
         if(running == null) {
             running = new TargetModuleID[0];

Modified: geronimo/server/trunk/modules/geronimo-deploy-tool/src/main/java/org/apache/geronimo/deployment/cli/CommandRedeploy.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-deploy-tool/src/main/java/org/apache/geronimo/deployment/cli/CommandRedeploy.java?view=diff&rev=549455&r1=549454&r2=549455
==============================================================================
--- geronimo/server/trunk/modules/geronimo-deploy-tool/src/main/java/org/apache/geronimo/deployment/cli/CommandRedeploy.java (original)
+++ geronimo/server/trunk/modules/geronimo-deploy-tool/src/main/java/org/apache/geronimo/deployment/cli/CommandRedeploy.java Thu Jun 21 05:12:27 2007
@@ -113,7 +113,7 @@
                     }
                 }
             } catch (IOException e) {
-                throw new DeploymentException("Unable to read input files: "+e.getMessage());
+                throw new DeploymentException("Unable to read input files: "+e.getMessage(), e);
             }
             if(moduleId != null) {
                 emit("Attempting to use ModuleID '"+moduleId+"'");

Modified: geronimo/server/trunk/modules/geronimo-deploy-tool/src/main/java/org/apache/geronimo/deployment/cli/DeployUtils.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-deploy-tool/src/main/java/org/apache/geronimo/deployment/cli/DeployUtils.java?view=diff&rev=549455&r1=549454&r2=549455
==============================================================================
--- geronimo/server/trunk/modules/geronimo-deploy-tool/src/main/java/org/apache/geronimo/deployment/cli/DeployUtils.java (original)
+++ geronimo/server/trunk/modules/geronimo-deploy-tool/src/main/java/org/apache/geronimo/deployment/cli/DeployUtils.java Thu Jun 21 05:12:27 2007
@@ -75,7 +75,7 @@
                 }
             }
         } catch (IOException e) {
-            throw new AssertionError("This should be impossible");
+            throw (AssertionError)new AssertionError("This should be impossible").initCause(e);
         }
         return buf.toString();
     }

Modified: geronimo/server/trunk/modules/geronimo-deploy-tool/src/main/java/org/apache/geronimo/deployment/cli/ServerConnection.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-deploy-tool/src/main/java/org/apache/geronimo/deployment/cli/ServerConnection.java?view=diff&rev=549455&r1=549454&r2=549455
==============================================================================
--- geronimo/server/trunk/modules/geronimo-deploy-tool/src/main/java/org/apache/geronimo/deployment/cli/ServerConnection.java (original)
+++ geronimo/server/trunk/modules/geronimo-deploy-tool/src/main/java/org/apache/geronimo/deployment/cli/ServerConnection.java Thu Jun 21 05:12:27 2007
@@ -188,7 +188,7 @@
                     throw new DeploymentException("Login Failed");
                 }
             } catch (DeploymentManagerCreationException e) {
-                throw new DeploymentException("Unable to connect to server at " + useURI + " -- " + e.getMessage());
+                throw new DeploymentException("Unable to connect to server at " + useURI + " -- " + e.getMessage(), e);
             }
         }
 

Modified: geronimo/server/trunk/modules/geronimo-deployment/src/main/java/org/apache/geronimo/deployment/DeploymentContext.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-deployment/src/main/java/org/apache/geronimo/deployment/DeploymentContext.java?view=diff&rev=549455&r1=549454&r2=549455
==============================================================================
--- geronimo/server/trunk/modules/geronimo-deployment/src/main/java/org/apache/geronimo/deployment/DeploymentContext.java (original)
+++ geronimo/server/trunk/modules/geronimo-deployment/src/main/java/org/apache/geronimo/deployment/DeploymentContext.java Thu Jun 21 05:12:27 2007
@@ -264,7 +264,7 @@
         try {
             manifest = moduleFile.getManifest();
         } catch (IOException e) {
-            throw new DeploymentException("Could not read manifest: " + moduleBaseUri);
+            throw new DeploymentException("Could not read manifest: " + moduleBaseUri, e);
         }
 
         if (manifest == null) {

Modified: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/EARConfigBuilder.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/EARConfigBuilder.java?view=diff&rev=549455&r1=549454&r2=549455
==============================================================================
--- geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/EARConfigBuilder.java (original)
+++ geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/EARConfigBuilder.java Thu Jun 21 05:12:27 2007
@@ -590,7 +590,7 @@
                     }
                     gbeanData.setAttribute("deploymentDescriptor", originalSpecDD);
                 } catch (Exception e) {
-                    throw new DeploymentException("Error initializing J2EEApplication managed object");
+                    throw new DeploymentException("Error initializing J2EEApplication managed object", e);
                 }
                 gbeanData.setReferencePatterns("Server", new ReferencePatterns(new AbstractNameQuery(J2EEServer.class.getName())));
 

Modified: geronimo/server/trunk/modules/geronimo-j2ee/src/main/java/org/apache/geronimo/j2ee/annotation/Holder.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-j2ee/src/main/java/org/apache/geronimo/j2ee/annotation/Holder.java?view=diff&rev=549455&r1=549454&r2=549455
==============================================================================
--- geronimo/server/trunk/modules/geronimo-j2ee/src/main/java/org/apache/geronimo/j2ee/annotation/Holder.java (original)
+++ geronimo/server/trunk/modules/geronimo-j2ee/src/main/java/org/apache/geronimo/j2ee/annotation/Holder.java Thu Jun 21 05:12:27 2007
@@ -111,7 +111,7 @@
         try {
             clazz = classLoader.loadClass(className);
         } catch (ClassNotFoundException e) {
-            throw new InstantiationException("Can't load class " + className + " in classloader: " + classLoader);
+            throw (InstantiationException)new InstantiationException("Can't load class " + className + " in classloader: " + classLoader).initCause(e);
         }
         List<NamingException> problems = new ArrayList<NamingException>();
         while (clazz != Object.class) {

Modified: geronimo/server/trunk/modules/geronimo-jasper-builder/src/main/java/org/apache/geronimo/jasper/deployment/JspModuleBuilderExtension.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-jasper-builder/src/main/java/org/apache/geronimo/jasper/deployment/JspModuleBuilderExtension.java?view=diff&rev=549455&r1=549454&r2=549455
==============================================================================
--- geronimo/server/trunk/modules/geronimo-jasper-builder/src/main/java/org/apache/geronimo/jasper/deployment/JspModuleBuilderExtension.java (original)
+++ geronimo/server/trunk/modules/geronimo-jasper-builder/src/main/java/org/apache/geronimo/jasper/deployment/JspModuleBuilderExtension.java Thu Jun 21 05:12:27 2007
@@ -222,10 +222,10 @@
                         }
                     }
                     catch (MalformedURLException mfe) {
-                        throw new DeploymentException("Could not locate TLD file specified in <taglib>: URI: " + uri + " Location: " + location + " " + mfe.getMessage());
+                        throw new DeploymentException("Could not locate TLD file specified in <taglib>: URI: " + uri + " Location: " + location + " " + mfe.getMessage(), mfe);
                     }
                     catch (URISyntaxException use) {
-                        throw new DeploymentException("Could not locate TLD file specified in <taglib>: URI: " + uri + " Location: " + location + " " + use.getMessage());
+                        throw new DeploymentException("Could not locate TLD file specified in <taglib>: URI: " + uri + " Location: " + location + " " + use.getMessage(), use);
                     }
                 }
             }
@@ -252,7 +252,7 @@
             }
         }
         catch (IOException ioe) {
-            throw new DeploymentException("Could not locate TLD files located in META-INF(s) " + ioe.getMessage());
+            throw new DeploymentException("Could not locate TLD files located in META-INF(s) " + ioe.getMessage(), ioe);
         }
 
         log.debug("getTldFiles() Exit: URL[" + tldURLs.size() + "]: " + tldURLs.toString());
@@ -292,10 +292,10 @@
             }
         }
         catch (IOException ioe) {
-            throw new DeploymentException("Could not scan module for TLD files: " + webModule.getName() + " " + ioe.getMessage());
+            throw new DeploymentException("Could not scan module for TLD files: " + webModule.getName() + " " + ioe.getMessage(), ioe);
         }
         catch (Exception e) {
-            throw new DeploymentException("Could not scan module for TLD files: " + webModule.getName() + " " + e.getMessage());
+            throw new DeploymentException("Could not scan module for TLD files: " + webModule.getName() + " " + e.getMessage(), e);
         }
 
         log.debug("scanModule() Exit: URL[" + modURLs.size() + "]: " + modURLs.toString());
@@ -335,10 +335,10 @@
             }
         }
         catch (MalformedURLException mfe) {
-            throw new DeploymentException("Could not scan JAR file for TLD files: " + jarFile.getName() + " " + mfe.getMessage());
+            throw new DeploymentException("Could not scan JAR file for TLD files: " + jarFile.getName() + " " + mfe.getMessage(), mfe);
         }
         catch (Exception e) {
-            throw new DeploymentException("Could not scan JAR file for TLD files: " + jarFile.getName() + " " + e.getMessage());
+            throw new DeploymentException("Could not scan JAR file for TLD files: " + jarFile.getName() + " " + e.getMessage(), e);
         }
 
         log.debug("scanJAR() Exit: URL[" + jarURLs.size() + "]: " + jarURLs.toString());
@@ -378,7 +378,7 @@
                     }
                 }
                 catch (Exception e) {
-                    throw new DeploymentException("Could not scan directory for TLD files: " + url.toString() + " " + e.getMessage());
+                    throw new DeploymentException("Could not scan directory for TLD files: " + url.toString() + " " + e.getMessage(), e);
                 }
             } else if (url.toString().startsWith("file:")) {
                 try {
@@ -396,7 +396,7 @@
                     }
                 }
                 catch (Exception e) {
-                    throw new DeploymentException("Could not scan directory for TLD files: " + url.toString() + " " + e.getMessage());
+                    throw new DeploymentException("Could not scan directory for TLD files: " + url.toString() + " " + e.getMessage(), e);
                 }
             } else if (url.toString().startsWith("jar:")) {
                 log.warn("URL type not accounted for: " + url.toString());