Boa noite pessoal.
Estou com problemas em um cadastro que estou tentando montar. A minha minha base de dados tenho uma tabela chamada teste e ela tem uma FK para uma tabela chamada produto e outra FK para uma tabela chamada casouso.
No formulário xhtml tenho um campo combo que vai exibir o nome do produto e outro combo para o título do caso de uso. Mesma lógica. O caso é que só o campo do produto é preenchido. Está dando erro por causa do caso de uso e não entendo porque.
O erro é o seguinte:
javax.el.PropertyNotFoundException: /restrito/teste.xhtml @52,134 value="#{testeBean.teste.casouso}": The class 'gestao.teste.Teste' does not have the property 'casouso'.
No xhtml criei os combos assim:
<h:outputLabel value="Caso de Uso:" for="casouso" />
<h:selectOneMenu id="casouso" value="#{testeBean.teste.casouso}" converter="casousoConverter" rendered="#{!empty contextoBean}">
<f:selectItems value="#{casousoBean.lista}" var="casouso" itemValue="#{casouso}" itemLabel="#{casouso.titulo}" />
</h:selectOneMenu>
<h:outputLabel value="Produto:" for="produto" />
<h:selectOneMenu id="produto" value="#{testeBean.teste.produto}" converter="produtoConverter" rendered="#{!empty contextoBean}">
<f:selectItems value="#{produtoBean.lista}" var="produto" itemValue="#{produto}" itemLabel="#{produto.nome}" />
</h:selectOneMenu>
E na clase Teste eu crio esse campo caso de uso assim:
@ManyToOne(targetEntity = CasoUso.class, fetch = FetchType.EAGER)
@JoinColumn(name = "casouso", nullable = true)
@ForeignKey(name = "fk_teste_casouso")
@Cascade({org.hibernate.annotations.CascadeType.MERGE, org.hibernate.annotations.CascadeType.SAVE_UPDATE})
private CasoUso casouso;
E no construtor faço assim:
public Teste() {
this.casouso = new CasoUso();
this.produto = new Produto();
}
Alguém tem idéia do que fiz errado?
