You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by jb...@apache.org on 2007/06/11 00:24:06 UTC

svn commit: r545955 - in /incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket: request/target/coding/ request/target/resource/ util/resource/

Author: jbq
Date: Sun Jun 10 15:24:03 2007
New Revision: 545955

URL: http://svn.apache.org/viewvc?view=rev&rev=545955
Log:
WICKET-293 PackageRequestTargetUrlCodingStrategy should interrupts the cycle and sends a 404 when a page/class cannot be found

Modified:
    incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/coding/PackageRequestTargetUrlCodingStrategy.java
    incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/resource/ResourceStreamRequestTarget.java
    incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/util/resource/WebExternalResourceStream.java

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=545955&r1=545954&r2=545955
==============================================================================
--- 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 Sun Jun 10 15:24:03 2007
@@ -89,8 +89,17 @@
 		}
 
 		final String bookmarkablePageClassName = packageName + "." + remainder.substring(0, ix);
-		Class bookmarkablePageClass = Session.get().getClassResolver().resolveClass(
-				bookmarkablePageClassName);
+		Class bookmarkablePageClass;
+		try
+		{
+			bookmarkablePageClass = Session.get().getClassResolver().resolveClass(
+					bookmarkablePageClassName);
+		}
+		catch (Exception e)
+		{
+			log.debug(e.getMessage());
+			return null;
+		}		
 		PageParameters parameters = new PageParameters(decodeParameters(parametersFragment,
 				requestParameters.getParameters()));
 

Modified: incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/resource/ResourceStreamRequestTarget.java
URL: http://svn.apache.org/viewvc/incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/resource/ResourceStreamRequestTarget.java?view=diff&rev=545955&r1=545954&r2=545955
==============================================================================
--- incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/resource/ResourceStreamRequestTarget.java (original)
+++ incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/resource/ResourceStreamRequestTarget.java Sun Jun 10 15:24:03 2007
@@ -16,11 +16,13 @@
  */
 package org.apache.wicket.request.target.resource;
 
+import javax.servlet.http.HttpServletResponse;
+
 import org.apache.wicket.IRequestTarget;
 import org.apache.wicket.RequestCycle;
 import org.apache.wicket.Response;
-import org.apache.wicket.WicketRuntimeException;
 import org.apache.wicket.protocol.http.WebResponse;
+import org.apache.wicket.protocol.http.request.WebErrorCodeResponseTarget;
 import org.apache.wicket.util.resource.IResourceStream;
 import org.apache.wicket.util.resource.ResourceStreamNotFoundException;
 import org.slf4j.Logger;
@@ -126,7 +128,7 @@
 		}
 		catch (ResourceStreamNotFoundException e)
 		{
-			throw new WicketRuntimeException(e);
+			requestCycle.setRequestTarget(new WebErrorCodeResponseTarget(HttpServletResponse.SC_NOT_FOUND));
 		}
 	}
 

Modified: incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/util/resource/WebExternalResourceStream.java
URL: http://svn.apache.org/viewvc/incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/util/resource/WebExternalResourceStream.java?view=diff&rev=545955&r1=545954&r2=545955
==============================================================================
--- incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/util/resource/WebExternalResourceStream.java (original)
+++ incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/util/resource/WebExternalResourceStream.java Sun Jun 10 15:24:03 2007
@@ -96,7 +96,7 @@
 		in = context.getResourceAsStream(url);
 		if (in == null)
 		{
-			throw new WicketRuntimeException("The requested resource was not found: " + url);
+			throw new ResourceStreamNotFoundException("The requested resource was not found: " + url);
 		}
 		return in;
 	}