code: @Override
      public Iterator getIterator(Object obj, Info i) throws Exception
      {
          if (obj != null) {
              SecureIntrospectorControl sic = (SecureIntrospectorControl) this.introspector;
              if (sic.checkObjectExecutePermission(obj.getClass(), null)) {
                  return super.getIterator(obj, i);
              } else {
                  this.log.warn("Cannot retrieve iterator from " + obj.getClass() + " due to security restrictions.");
              }
          }
          return null;
      }
docs: Get an iterator from the given object. Since the superclass method this secure version checks for execute
  permission.
  
  @param obj object to iterate over
  @param i line, column, template info
  @return Iterator for object
  @throws Exception when failing to get iterator