É possível utilizar uma interface como atributo em uma classe e esse atributo usar a anotação @ManyToOne?
O contexto geral é de uso do padrão Strategy…
Tenho uma interface Participante e as entidades Aluno, Servidor e Docente que implementam essa interface…
Tenho uma outra entidade Participacao, que tem como atributo a interface Participante e esse atributo tem a anotação @ManyToOne.
Isso é possível?
Se não, qual seria a solução?
Fala RB!
Com interface eu não sei se funciona, mas se for uma classe abstrata, tenho certeza que sim. Você estaria usando a mesma idéia do Strategy só que usando uma classe abstrata para implementação (o livro Head First Design Patterns chama a atenção para isso: o termo interface utilizado no livro não é a mesma idéia que interface em Java). Caso não haja problemas de Aluno, Servidor e Docente estenderem a classe Participante por meio de herança, daria certinho. Aí é só declarar os método que você quer que as subclasses implementem como abstratos na classe Participante.
Grande abraço.