Lägger upp min kommentar som ett svar, eftersom det löste problemet och kan vara användbart för andra som har svårt att använda xml-stream
paketera på detta sätt.
I fråga är collect
metoden orsakar problemet eftersom den tvingar tolken att samla in alla instanser av den bearbetade noden i en array när de analyseras. collect
bör endast användas för att samla in underordnade objekt av en viss typ från varje nod som tolkas. Standardbeteendet är att inte göra det (på grund av strömningskaraktären hos parsern som låter dig bearbeta filer med flera gigabyte med lätthet).
Så lösningen var att ta bort den kodraden och bara använda endElement
händelse.