JPA Наследование требует ID в подклассе

У меня проблема с моей моделью домена jpa. Я просто пытаюсь поиграть с простым наследованием, для которого я использую простой базовый класс Person и подкласс Customer. Согласно официальной документации (как JPA, так и EclipseLink) мне нужен только ID-атрибут / столбец в базовом классе.Но когда я запускаю свои тесты, я всегда получаю сообщение о том, что у Клиента нет @Id?

Сначала я подумал, что проблема заключается в видимости атрибута id, потому что сначала он был закрытым. Но даже после того, как я изменил его на защищенный (так что у подкласса есть прямой доступ), он не работает.

Человек:

@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;

Покупатель:

@Entity @Table(name = "Customers")
@DiscriminatorValue("C")
public class Customer extends Person {

    //no id needed here

У меня заканчиваются идеи и ресурсы, чтобы посмотреть. Это должно быть довольно простой проблемой, но я просто не вижу этого.

Ответы на вопрос(7)

Ваш ответ на вопрос