Ola estou tentando aplicar o CrudRepository nas minhas classes com herança mas esta dando o seguinte erro:
Caused by: org.postgresql.util.PSQLException: ERROR: relation "usuario" does not exist
Segue classes no meu projeto
@Entity
@Inheritance(strategy=InheritanceType.SINGLE_TABLE)
@DiscriminatorColumn(name="Tipo_usu",discriminatorType=DiscriminatorType.STRING)
@DiscriminatorValue("usuario")
public class Usuario implements Serializable{
/**
*
*/
private static final long serialVersionUID = 1L;
@Id
private String EMail;
private String Profile;
private String Nome;
//demais campos omitidos
@Entity
@DiscriminatorValue("aluno")
public class Aluno extends Usuario{
/**
*
*/
private static final long serialVersionUID = 1L;
@ManyToOne(cascade={CascadeType.MERGE,CascadeType.PERSIST})
@JoinColumn(name="instrutor_EMail")
private Instrutor instrutor;
@Entity
@DiscriminatorValue("admin")
public class Admin extends Usuario{
/**
*
*/
private static final long serialVersionUID = 1L;
Minha implementacao de Repository
@NoRepositoryBean
public interface UsuarioBaseRepository<T extends Usuario> extends CrudRepository<T, String> {
}
@Transactional
public interface AlunoRepository extends UsuarioBaseRepository<Aluno>, CrudRepository<Aluno, String>{
}
@Transactional
public interface AdminRepository extends UsuarioBaseRepository<Admin>, CrudRepository<Admin, String> {
}
E o Service do aluno
@Service
public class AlunoService {
@Autowired
private AlunoRepository repository;
public void cadastrar(Aluno aluno) {
repository.save(aluno);
}
public Iterable<Aluno> listar(){
return repository.findAll();
}
public Optional<Aluno> detalhe(String email) {
return repository.findById(email);
}
}
Desde ja muito obrigado pela ajuda!!