Opublikowanie mojego komentarza jako odpowiedzi, ponieważ rozwiązało to problem i może być przydatne dla innych, którzy mają trudności z używaniem xml-stream
pakować w ten sposób.
W pytaniu collect
Metoda powoduje problem, ponieważ zmusza parser do zebrania wszystkich wystąpień przetwarzanego węzła w tablicy podczas ich analizy. collect
powinien być używany tylko do zbierania elementów podrzędnych określonego typu z każdego analizowanego węzła. Domyślnym zachowaniem nie jest robienie tego (ze względu na strumieniowy charakter parsera, który pozwala z łatwością przetwarzać wielogigabajtowe pliki).
Więc rozwiązaniem było usunięcie tej linii kodu i po prostu użycie endElement
wydarzenie.