An Array T[] is not the same as a List<T>. Change your insertionSort method to take a parameter List<T>:

public static <T extends Comparable<? super T>> void insertionSort (List<T> data)
{
//...