code: public static List<Object> execute(String correlationId, Iterable<Object> components, Parameters args)
  			throws ApplicationException {
  
  		List<Object> results = new ArrayList<Object>();
  		if (components == null)
  			return results;
  
  		for (Object component : components) {
  			if (component instanceof IExecutable)
  				results.add(executeOne(correlationId, component, args));
  		}
  
  		return results;
  	}
docs: Executes multiple components.
  
  To be executed components must implement IExecutable interface. If they don't
  the call to this method has no effect.
  
  @param correlationId (optional) transaction id to trace execution through
  call chain.
  @param components    a list of components that are to be executed.
  @param args          execution arguments.
  @return execution result.
  @throws ApplicationException when errors occured.
  
  @see #executeOne(String, Object, Parameters)
  @see IExecutable
  @see Parameters