component.isVisible() check.
If not then 403 is send to the browser (forbidden)


git-svn-id: https://svn.apache.org/repos/asf/incubator/wicket/trunk@457208 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/wicket/src/java/wicket/protocol/http/WebRequestCycle.java b/wicket/src/java/wicket/protocol/http/WebRequestCycle.java
index ccc7bdc..34b4b0b 100644
--- a/wicket/src/java/wicket/protocol/http/WebRequestCycle.java
+++ b/wicket/src/java/wicket/protocol/http/WebRequestCycle.java
@@ -525,6 +525,20 @@
 		final Component component = page.get(Strings.afterFirstPathComponent(path, ':'));
 		if (component != null)
 		{
+			if(!component.isVisible())
+			{
+				try
+				{
+					getWebResponse().getHttpServletResponse().sendError(HttpServletResponse.SC_FORBIDDEN, 
+					        "Unable to execute this request");
+				}
+				catch (IOException ex)
+				{
+					// that seems unlikely... anyway, log exception and forget about it
+					log.error("unable to send 403 for " + getRequest() + ", cause: " + ex.getMessage(), ex);
+				}
+				return;
+			}
 			Method method = getRequestInterfaceMethod(interfaceName);
 			if (method != null)
 			{