You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by hl...@apache.org on 2008/03/19 18:02:34 UTC

svn commit: r638935 - /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/services/TapestryModule.java

Author: hlship
Date: Wed Mar 19 10:02:17 2008
New Revision: 638935

URL: http://svn.apache.org/viewvc?rev=638935&view=rev
Log:
TAPESTRY-2284: Report about missing required parameter is broken

Modified:
    tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/services/TapestryModule.java

Modified: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/services/TapestryModule.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/services/TapestryModule.java?rev=638935&r1=638934&r2=638935&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/services/TapestryModule.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/services/TapestryModule.java Wed Mar 19 10:02:17 2008
@@ -223,7 +223,8 @@
      * annotation</dd> <dt>ContentType</dt> <dd>Checks for {@link org.apache.tapestry.annotations.ContentType}
      * annotation</dd> <dt>ResponseEncoding</dt> <dd>Checks for the {@link org.apache.tapestry.annotations.ResponseEncoding}
      * annotation</dd> <dt>GenerateAccessors</dt> <dd>Generates accessor methods if {@link
-     * org.apache.tapestry.annotations.Property} annotation is present </dd> <dt>Cached</dt> <dd>Checks for the {@link Cached} annotation</dd></dl>
+     * org.apache.tapestry.annotations.Property} annotation is present </dd> <dt>Cached</dt> <dd>Checks for the {@link
+     * Cached} annotation</dd></dl>
      */
     public static void contributeComponentClassTransformWorker(
             OrderedConfiguration<ComponentClassTransformWorker> configuration,
@@ -243,7 +244,7 @@
         // TODO: Proper scheduling of all of this. Since a given field or method should
         // only have a single annotation, the order doesn't matter so much, as long as
         // UnclaimedField is last.
-        
+
         configuration.add("Cached", locator.autobuild(CachedWorker.class));
 
         configuration.add("Meta", new MetaWorker());
@@ -532,7 +533,23 @@
                     // TAPESTRY-2078
 
                     if (ex.getCause() == null)
-                        ex.initCause(requestGlobals.getClassLoaderException());
+                    {
+                        Throwable cause = requestGlobals.getClassLoaderException();
+
+                        if (cause != null)
+                        {
+
+                            try
+                            {
+                                ex.initCause(cause);
+                            }
+                            catch (IllegalStateException ise)
+                            {
+                                // TAPESTRY-2284: sometimes you just can't init the cause, and there's no way to
+                                // find out without trying.
+                            }
+                        }
+                    }
 
                     exceptionHandler.handleRequestException(ex);