org.springframework.security.taglibs.authz
Class AccessControlListTag

java.lang.Object
  extended by javax.servlet.jsp.tagext.TagSupport
      extended by org.springframework.security.taglibs.authz.AccessControlListTag
All Implemented Interfaces:
Serializable, javax.servlet.jsp.tagext.IterationTag, javax.servlet.jsp.tagext.JspTag, javax.servlet.jsp.tagext.Tag

public class AccessControlListTag
extends javax.servlet.jsp.tagext.TagSupport

An implementation of Tag that allows its body through if some authorizations are granted to the request's principal.

One or more comma separate numeric are specified via the hasPermission attribute. The tag delegates to the configured PermissionEvaluator which it obtains from the ApplicationContext.

For this class to operate it must be able to access the application context via the WebApplicationContextUtils and attempt to locate the PermissionEvaluator instance. There cannot be more than one of these present for the tag to function.

See Also:
Serialized Form

Field Summary
protected static org.apache.commons.logging.Log logger
           
 
Fields inherited from class javax.servlet.jsp.tagext.TagSupport
id, pageContext
 
Fields inherited from interface javax.servlet.jsp.tagext.IterationTag
EVAL_BODY_AGAIN
 
Fields inherited from interface javax.servlet.jsp.tagext.Tag
EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE
 
Constructor Summary
AccessControlListTag()
           
 
Method Summary
 int doStartTag()
           
protected  ApplicationContext getContext(javax.servlet.jsp.PageContext pageContext)
          Allows test cases to override where application context obtained from.
 Object getDomainObject()
           
 String getHasPermission()
           
 void setDomainObject(Object domainObject)
           
 void setHasPermission(String hasPermission)
           
 void setVar(String var)
           
 
Methods inherited from class javax.servlet.jsp.tagext.TagSupport
doAfterBody, doEndTag, findAncestorWithClass, getId, getParent, getValue, getValues, release, removeValue, setId, setPageContext, setParent, setValue
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

logger

protected static final org.apache.commons.logging.Log logger
Constructor Detail

AccessControlListTag

public AccessControlListTag()
Method Detail

doStartTag

public int doStartTag()
               throws javax.servlet.jsp.JspException
Specified by:
doStartTag in interface javax.servlet.jsp.tagext.Tag
Overrides:
doStartTag in class javax.servlet.jsp.tagext.TagSupport
Throws:
javax.servlet.jsp.JspException

getContext

protected ApplicationContext getContext(javax.servlet.jsp.PageContext pageContext)
Allows test cases to override where application context obtained from.

Parameters:
pageContext - so the ServletContext can be accessed as required by Spring's WebApplicationContextUtils
Returns:
the Spring application context (never null)

getDomainObject

public Object getDomainObject()

getHasPermission

public String getHasPermission()

setDomainObject

public void setDomainObject(Object domainObject)

setHasPermission

public void setHasPermission(String hasPermission)

setVar

public void setVar(String var)