You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by al...@apache.org on 2007/05/22 16:08:11 UTC
svn commit: r540591 - in
/incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket:
application/DefaultClassResolver.java
request/target/coding/PackageRequestTargetUrlCodingStrategy.java
Author: almaw
Date: Tue May 22 07:08:10 2007
New Revision: 540591
URL: http://svn.apache.org/viewvc?view=rev&rev=540591
Log:
WICKET-554
Modified:
incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/application/DefaultClassResolver.java
incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/coding/PackageRequestTargetUrlCodingStrategy.java
Modified: incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/application/DefaultClassResolver.java
URL: http://svn.apache.org/viewvc/incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/application/DefaultClassResolver.java?view=diff&rev=540591&r1=540590&r2=540591
==============================================================================
--- incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/application/DefaultClassResolver.java (original)
+++ incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/application/DefaultClassResolver.java Tue May 22 07:08:10 2007
@@ -67,7 +67,7 @@
}
catch (ClassNotFoundException ex)
{
- throw new WicketRuntimeException("Unable to load class with name: " + classname);
+ throw new WicketRuntimeException("Unable to load class with name: " + classname, ex);
}
}
}
Modified: incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/coding/PackageRequestTargetUrlCodingStrategy.java
URL: http://svn.apache.org/viewvc/incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/coding/PackageRequestTargetUrlCodingStrategy.java?view=diff&rev=540591&r1=540590&r2=540591
==============================================================================
--- incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/coding/PackageRequestTargetUrlCodingStrategy.java (original)
+++ incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/coding/PackageRequestTargetUrlCodingStrategy.java Tue May 22 07:08:10 2007
@@ -92,17 +92,31 @@
log.debug("remainder=" + remainder);
log.debug("parametersFragment=" + parametersFragment);
final String bookmarkablePageClassName = packageName + "." + remainder.substring(0, ix);
- Class bookmarkablePageClass = Session.get().getClassResolver().resolveClass(
- bookmarkablePageClassName);
- PageParameters parameters = new PageParameters(decodeParameters(parametersFragment,
- requestParameters.getParameters()));
-
- final String pageMapName = (String)parameters.remove(WebRequestCodingStrategy.PAGEMAP);
- requestParameters.setPageMapName(pageMapName);
-
- BookmarkablePageRequestTarget target = new BookmarkablePageRequestTarget(pageMapName,
- bookmarkablePageClass, parameters);
- return target;
+ try
+ {
+ Class bookmarkablePageClass = Session.get().getClassResolver().resolveClass(
+ bookmarkablePageClassName);
+ PageParameters parameters = new PageParameters(decodeParameters(parametersFragment,
+ requestParameters.getParameters()));
+
+ final String pageMapName = (String)parameters.remove(WebRequestCodingStrategy.PAGEMAP);
+ requestParameters.setPageMapName(pageMapName);
+
+ BookmarkablePageRequestTarget target = new BookmarkablePageRequestTarget(pageMapName,
+ bookmarkablePageClass, parameters);
+ return target;
+ }
+ catch (RuntimeException ex)
+ {
+ // If the class resolver wraps a ClassNotFoundException with a
+ // RuntimeException, just return null here, which will cause a 404
+ // or similar.
+ if (ex.getCause() instanceof ClassNotFoundException)
+ {
+ return null;
+ }
+ throw ex;
+ }
}
/**