So i have 2 Documents:
A Category has many pages.
Now here's my (test) action: http://pastebin.com/ypjxqZPu
As you can see, $contentDocument is a page in this case. If i call $contentDocument->category i get back "null".
If however i tell the document manager to fetch the Page document by it's path, then $contentDocument->category will work...
Our conclusion is that if you take the $contentDocument that is passed to your action, and you try to fetch it's ParentDocument inside the action (mapped to a property) you always get null.
However, what is very weird, is that inside twig it works (page.category would work in twig but page->category would return null inside the action, before the twig render)