Zdarzyło mi się to, ponieważ ręcznie dodałem wpis do mojej bazy danych o identyfikatorze 0 (zero). W moim przypadku EclipseLink "nie mógł" obsłużyć identyfikatora o wartości zero. Więc dodałem następujące do mojego persistence.xml:
<property name="eclipselink.allow-zero-id" value="true"/>
Ta właściwość mówi, że EclipseLink obsługuje zero jako prawidłowy identyfikator.
[1] http://meetrohan.blogspot.de/ 2011/11/eclipselink-null-primary-key.html