because you start mapping the parent (see below), the phpcr-odm started to chose the auto id strategy rather than assigned id. making the strategy explicit avoids the issue.

i improved the phpcr-odm to report a better exception so that we see which class has no parent...