Мне удалось вывести полные имена на консоль.
Ну, вы поместили этот код в неправильном месте. Код должен быть размещен, когда вы фактически используете List для создания JList. (ie. Возможно, у вас есть код, который случайно удаляет Список через некоторое время после его создания и перед использованием)
У меня возникла проблема при попытке отобразить JList с ArrayList
Что ж, проблема в ArrayList или вы также пытались жестко закодировать данные в JList? Чтобы решить проблему, вам нужно знать, в чем заключается настоящая проблема. Всегда сначала пытайтесь отображать жестко закодированные данные вместо динамических c данных.
add(new JScrollPane(contactList));
Я думаю, что настоящая проблема заключается в приведенном выше утверждении.
Всякий раз, когда вы добавляете компоненты в видимую рамку код basi c должен быть:
add(...);
revalidate();
repaint();
Вам необходимо вызвать менеджер раскладки панели. В противном случае компонент имеет размер 0, поэтому рисовать нечего.