You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by iv...@apache.org on 2010/08/18 01:48:43 UTC

svn commit: r986529 - in /wicket/trunk/wicket/src/main/java/org/apache/wicket/request/resource: AbstractResource.java ResourceStreamResource.java SharedResourceReference.java

Author: ivaynberg
Date: Tue Aug 17 23:48:42 2010
New Revision: 986529

URL: http://svn.apache.org/viewvc?rev=986529&view=rev
Log:
AbstractResource should give access to the error message for http errors
Issue: WICKET-2997

Modified:
    wicket/trunk/wicket/src/main/java/org/apache/wicket/request/resource/AbstractResource.java
    wicket/trunk/wicket/src/main/java/org/apache/wicket/request/resource/ResourceStreamResource.java
    wicket/trunk/wicket/src/main/java/org/apache/wicket/request/resource/SharedResourceReference.java

Modified: wicket/trunk/wicket/src/main/java/org/apache/wicket/request/resource/AbstractResource.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/request/resource/AbstractResource.java?rev=986529&r1=986528&r2=986529&view=diff
==============================================================================
--- wicket/trunk/wicket/src/main/java/org/apache/wicket/request/resource/AbstractResource.java (original)
+++ wicket/trunk/wicket/src/main/java/org/apache/wicket/request/resource/AbstractResource.java Tue Aug 17 23:48:42 2010
@@ -65,6 +65,7 @@ public abstract class AbstractResource i
 	public static class ResourceResponse
 	{
 		private Integer errorCode;
+		private String errorMessage;
 		private String fileName = null;
 		private ContentDisposition contentDisposition = ContentDisposition.INLINE;
 		private String contentType = null;
@@ -89,11 +90,26 @@ public abstract class AbstractResource i
 		 * 
 		 * @param errorCode
 		 */
-		public void setErrorCode(Integer errorCode)
+		public void setError(Integer errorCode)
+		{
+			setError(errorCode, null);
+		}
+
+		/**
+		 * Sets the error code and message for resource. If there is an error code set the data will
+		 * not be rendered and the code and message will be sent to client.
+		 * 
+		 * @param errorCode
+		 * @param errorMessage
+		 *            error message
+		 */
+		public void setError(Integer errorCode, String errorMessage)
 		{
 			this.errorCode = errorCode;
+			this.errorMessage = errorMessage;
 		}
 
+
 		/**
 		 * @return error code or <code>null</code>
 		 */
@@ -103,6 +119,14 @@ public abstract class AbstractResource i
 		}
 
 		/**
+		 * @return error message or <code>null</code>
+		 */
+		public String getErrorMessage()
+		{
+			return errorMessage;
+		}
+
+		/**
 		 * Sets the file name of the resource.
 		 * 
 		 * @param fileName
@@ -297,7 +321,7 @@ public abstract class AbstractResource i
 		 * <p>
 		 * It is necessary to set the {@link WriteCallback} if
 		 * {@link #dataNeedsToBeWritten(org.apache.wicket.ng.resource.IResource.Attributes)} returns
-		 * <code>true</code> and {@link #setErrorCode(Integer)} has not been called.
+		 * <code>true</code> and {@link #setError(Integer)} has not been called.
 		 * 
 		 * @param writeCallback
 		 */
@@ -314,7 +338,7 @@ public abstract class AbstractResource i
 		{
 			return writeCallback;
 		}
-	};
+	}
 
 	protected void configureCache(WebRequest request, WebResponse response, ResourceResponse data,
 		Attributes attributes)
@@ -358,7 +382,7 @@ public abstract class AbstractResource i
 		}
 		else if (data.getErrorCode() != null)
 		{
-			response.sendError(data.getErrorCode(), null);
+			response.sendError(data.getErrorCode(), data.getErrorMessage());
 		}
 		else
 		{
@@ -486,5 +510,5 @@ public abstract class AbstractResource i
 				throw new WicketRuntimeException(e);
 			}
 		}
-	};
-}
+	}
+}
\ No newline at end of file

Modified: wicket/trunk/wicket/src/main/java/org/apache/wicket/request/resource/ResourceStreamResource.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/request/resource/ResourceStreamResource.java?rev=986529&r1=986528&r2=986529&view=diff
==============================================================================
--- wicket/trunk/wicket/src/main/java/org/apache/wicket/request/resource/ResourceStreamResource.java (original)
+++ wicket/trunk/wicket/src/main/java/org/apache/wicket/request/resource/ResourceStreamResource.java Tue Aug 17 23:48:42 2010
@@ -81,7 +81,7 @@ public class ResourceStreamResource exte
 				}
 				catch (ResourceStreamNotFoundException e)
 				{
-					data.setErrorCode(HttpServletResponse.SC_NOT_FOUND);
+					data.setError(HttpServletResponse.SC_NOT_FOUND);
 					close();
 				}
 			}

Modified: wicket/trunk/wicket/src/main/java/org/apache/wicket/request/resource/SharedResourceReference.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/request/resource/SharedResourceReference.java?rev=986529&r1=986528&r2=986529&view=diff
==============================================================================
--- wicket/trunk/wicket/src/main/java/org/apache/wicket/request/resource/SharedResourceReference.java (original)
+++ wicket/trunk/wicket/src/main/java/org/apache/wicket/request/resource/SharedResourceReference.java Tue Aug 17 23:48:42 2010
@@ -60,7 +60,7 @@ public class SharedResourceReference ext
 				protected ResourceResponse newResourceResponse(Attributes attributes)
 				{
 					ResourceResponse res = new ResourceResponse();
-					res.setErrorCode(HttpServletResponse.SC_NOT_FOUND);
+					res.setError(HttpServletResponse.SC_NOT_FOUND);
 					return res;
 				}
 			};