Herança JPA exige ID na subclasse
Eu tenho um problema com o meu modelo de domínio jpa. Eu estou apenas tentando brincar com uma herança simples para a qual eu uso uma simples classe base Person e uma subclasse Customer. De acordo com a documentação oficial (JPA e EclipseLink), só preciso do atributo / coluna ID na classe base.Mas quando eu executo meus testes, sempre recebo um erro dizendo que o cliente não tem @Id?
Primeiro, achei que o problema estava na visibilidade do atributo id, porque era privado primeiro. Mas mesmo depois que eu mudei para protected (então a subclasse tem acesso direto) ele não está funcionando.
Pessoa:
@Entity @Table(name="Persons")
@Inheritance(strategy = InheritanceType.JOINED)
@DiscriminatorColumn(name = "TYPE")
public class Person {
@Id
@GeneratedValue
protected int id;
@Column(nullable = false)
protected String firstName;
@Column(nullable = false)
protected String lastName;
Cliente:
@Entity @Table(name = "Customers")
@DiscriminatorValue("C")
public class Customer extends Person {
//no id needed here
Estou ficando sem idéias e recursos para olhar. Deve ser um problema bastante simples, mas eu simplesmente não vejo isso.