Вероятно, наилучшей практикой является перемещение кода, работающего со списком, в класс домена. Возможно, добавьте класс домена, который представляет последовательность способом, соответствующим домену.
Если вы отчаянно хотите раскрыть список, тогда есть выбор:
return Collections.unmodifiableList(new ArrayList<Thing>(things));
// Bit big - shame there isn't a single method and class to do this.
return new ArrayList<Thing>(things);
// Do you really want to see client code modifying the list?
return Collections.unmodifiableList(things);
// Client may expecting a snapshot, modifications to the original will mess up.
Обратите внимание, что если элементы списка изменчивы, вы также можете с ними что-то сделать.