public void apply(FaceletContext faceletContext, UIComponent uiComponent)
      throws IOException, FacesException, FaceletException, ELException {
    if (this.roles == null)
      throw new FaceletException("roles must be given, but is null");

    String roles = this.roles.getValue(faceletContext);
    if (roles == null || "".equals(roles.trim()))
      throw new FaceletException("roles must be given");

    if (SpringSecurityELLibrary.ifAnyGranted(roles))
      this.nextHandler.apply(faceletContext, uiComponent);
  }