I believe the issue lies in the fact that you're using toList(), which returns an immutable list instead of mutable list. Could you change:
toList()
.toList()
to:
.collect(Collectors.toList())