code: public static void setField(Object obj, String fieldName, Object value) {
      try {
        setField(obj, getField(obj.getClass(), fieldName), value);
      }
      catch (FieldNotFoundException e) {
        throw new IllegalArgumentException(String.format("Field with name (%1$s) does not exist on object of type (%2$s)!",
          fieldName, obj.getClass().getName()), e);
      }
    }
docs: Sets the field with the specified name on the given object to the given value. This method assumes the field
  is an instance (object) member field.
  
  @param obj the Object on which the field is defined.
  @param fieldName a String indicating the name of the field on which to set the value.
  @param value the Object value to set the specified field to.
  @throws IllegalArgumentException if the given object's class type does not declare an instance member field
  with the specified name.
  @throws FieldAccessException if the value for the specified field could not be set.
  @see #getField(Class, String)
  @see #setField(Object, java.lang.reflect.Field, Object)