| 
					
				 | 
			
			
				@@ -54,10 +54,13 @@ import javax.servlet.http.HttpServletResponse; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  * </p> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  *  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  * <p> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- * If an {@link AccessDeniedException} is detected, the filter will response 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- * with a <code>HttpServletResponse.SC_FORBIDDEN</code> (403 error). Again, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- * this allows common access denied handling irrespective of the originating 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- * security interceptor. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * If an {@link AccessDeniedException} is detected, the filter will respond 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * with a <code>HttpServletResponse.SC_FORBIDDEN</code> (403 error).  In 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * addition, the <code>AccessDeniedException</code> itself will be placed in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * the <code>HttpSession</code> attribute keyed against {@link 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * #ACEGI_SECURITY_ACCESS_DENIED_EXCEPTION_KEY} (to allow access to the stack 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * trace etc). Again, this allows common access denied handling irrespective 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * of the originating security interceptor. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  * </p> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  *  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  * <p> 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -96,6 +99,7 @@ public class SecurityEnforcementFilter implements Filter, InitializingBean { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     //~ Static fields/initializers ============================================= 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private static final Log logger = LogFactory.getLog(SecurityEnforcementFilter.class); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static final String ACEGI_SECURITY_ACCESS_DENIED_EXCEPTION_KEY = "ACEGI_SECURITY_403_EXCEPTION"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     //~ Instance fields ======================================================== 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -202,6 +206,8 @@ public class SecurityEnforcementFilter implements Filter, InitializingBean { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     "Access is denied - sending back forbidden response"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            ((HttpServletRequest) request).getSession().setAttribute(ACEGI_SECURITY_ACCESS_DENIED_EXCEPTION_KEY, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                accessDenied); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             sendAccessDeniedError(request, response); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } catch (Throwable otherException) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             throw new ServletException(otherException); 
			 |