code: public static Iterator getCollectionIterator(Object collectionOrArray)
      {
          Iterator colIterator;
          if (collectionOrArray instanceof ManageableCollection)
          {
              colIterator = ((ManageableCollection) collectionOrArray).ojbIterator();
          }
          else if (collectionOrArray instanceof Collection)
          {
              colIterator = ((Collection) collectionOrArray).iterator();
          }
          else if (collectionOrArray.getClass().isArray())
          {
              colIterator = new ArrayIterator(collectionOrArray);
          }
          else
          {
              throw new OJBRuntimeException( "Given object collection of type '"
                      + (collectionOrArray != null ? collectionOrArray.getClass().toString() : "null")
                  + "' can not be managed by OJB. Use Array, Collection or ManageableCollection instead!");
          }
          return colIterator;
      }
docs: Returns an Iterator instance for {@link java.util.Collection}, object Array or
  {@link org.apache.ojb.broker.ManageableCollection} instances.
  
  @param collectionOrArray a none <em>null</em> object of type {@link java.util.Collection},
  Array or {@link org.apache.ojb.broker.ManageableCollection}.
  @return Iterator able to handle given collection object