Currently I am working on a POC for Spring Data Rest. Trying to get workable JSONout of a repository.
I have an Entity Class (NewTask)
@Entity
@Tab
I'm using Spring Data Mongo as opposed to JPA but what worked for me was including the _class field in the Mongo "select" statement. Spring uses this field to map the DB results back into an entity / document.
Also take a look at @TypeAlias so that you have a consistent _class value as you shuffle around your domain classes.
I also ran into the same problem when I premtively projected the DB results with Spring projections. Later when I was converting the results into paginated resources the framework could not identify the projection interface as a persistent entity and therefore could not find the necessary metadata it needed to make the conversion for me. The solution for this use case was a custom resource assembler.