Oi povo!
Tô com um problema aqui, quem puder ajudar, eu agradeço…
lai vai…
Preciso buscar alguns dados de uma tabela pesquisando por um campo que nao pertence a esta tabela, mas uma outra relacionada.
-
RELACIONAMENTO
Ex: prontuario.id_pessoa --> pessoa.id_prontuario (n-1) -
PESQUISA
Pequiso pelo nome, mas o nome pertence a outra tabela… -
NA CLASSE
No MODEL, coloquei assim para fazer o JOIN
@Entity
@Table(name=“GSH_PRONTUARIO”)
public class Prontuario
{
@Id
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator=“GSH_SEQ_PRONTUARIO”)
@SequenceGenerator(name=“GSH_SEQ_PRONTUARIO”, sequenceName=“GSH_SEQ_PRONTUARIO”)
@MapKey(name=“ID_PRONTUARIO”)
@Column(name=“ID_PRONTUARIO”)
@NotNull
private Long id;
[b]@NotNull
@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(name = "id_pessoa")
private Pessoa pessoa;[/b]
- ERRO
Ao pesquisar pelo nome, ele nao consegue ACHAR O NOME DENTRO DO MODEL… pois ele está dentro do PESSOA. Não era para achar? ou falta algo???
- ERRO NA TELA:
exception
javax.servlet.ServletException: Could not execute action
com.opensymphony.webwork.dispatcher.DispatcherUtils.serviceAction(DispatcherUtils.java:215)
…
root cause
org.hibernate.QueryException: could not resolve property: nome of: br.com.mv.regulacao.model.Prontuario
org.hibernate.persister.entity.AbstractPropertyMapping.throwPropertyException(AbstractPropertyMapping.java:43)
-
CONCLUSÃO
Agradeço a ajuda!