package org.apache.shiro.web.faces.tags;

import com.sun.facelets.tag.TagConfig;

/**
 * @author Deluan Quintao
 */
public class LacksRoleTag extends PermissionTagHandler {

    // TODO - complete JavaDoc

    public LacksRoleTag(TagConfig config) {
        super(config);
    }

    @Override
    protected boolean showTagBody(String roleName) {
        return getSubject() != null && getSubject().hasRole(roleName);
    }

}
@@ -352,14 +352,25 @@
     
-return
+boolean hasRole =
  get
@@ -422,16 +422,41 @@
 eName);%0A
+        return !hasRole;%0A
     %7D%0A%0A%7D

tag <shiro:lacksRole> was behaving exactly as <shiro:hasRole>