Z dokumentacji javadocs OrderColumn:„Kolumna zamówienia musi być typu integralnego. Dostawca trwałości utrzymuje ciągłe (nierozrzedzone) porządkowanie wartości kolumny zamówienia podczas aktualizowania powiązania lub kolekcji elementów. Wartość kolumny kolejności dla pierwszego elementu to 0."
Oczekuje się więc, że wartości OrderColumn zaczynają się od 0 i są wartościami ciągłymi. Tak więc, gdy wartości nie są ciągłe, Hibernate dodaje elementy null do listy Java.
Myślę, że to zachowanie OrderColumn jest podobne do zachowania indeksu listy w hibernacji mapowania XML.