Pessoal, já procurei e nao encontrei como fazer com que o ‘estado’ selecionado em um combo box, atualize o ‘estado’ da entidade ‘CadastroPF’.
A entidade ‘CadastroPf’ consegue ser gravada, mas o ‘estado’ não é salvo de jeito nenhum.
@Name("estadoList")
public class EstadoList extends EntityQuery<Estado> {
.
.
public List<SelectItem> getListaEstado() {
//return this.getResultList();
ArrayList<SelectItem> lista = new ArrayList<SelectItem>();
List<Estado> resultado = (List<Estado>) this.getResultList();
for (Estado teste : resultado) {
SelectItem item = new SelectItem(teste, teste.getUfEstado());
lista.add(item);
}
return lista;
}
.
.
}
View
<s:decorate id="idEstado" template="layout/edit.xhtml">
<ui:define name="label">Estado</ui:define>
<h:selectOneMenu value="#{cadastroPfHome.instance.estado}"
>
<f:selectItem itemValue="" itemLabel=":: Selecione ::" />
<f:selectItems value="#{estadoList.listaEstado}" />
</h:selectOneMenu>
</s:decorate>
<s:decorate id="nomeField" template="layout/edit.xhtml">
<ui:define name="label">Nome</ui:define>
<h:inputTextarea id="nome"
cols="80"
rows="3"
value="#{cadastroPfHome.instance.nome}"/>
</s:decorate>
@Name("cadastroPfHome")
public class CadastroPfHome extends EntityHome<CadastroPf> {
.
.
@Override
protected CadastroPf createInstance() {
CadastroPf cadastroPf = new CadastroPf();
System.out.println(cadastroPf);
return cadastroPf;
}
.
.
}
Entidade CadastroPf
@Entity
@Table(name = "cadastro_pf")
@SequenceGenerator(name="SEQUENCE_ID", sequenceName="cadastro_pf_id_pf_seq", allocationSize=1)
public class CadastroPf implements java.io.Serializable {
.
.
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "fk_uf_estado")
private Estado estado;
.
.
}
PS: Esta estrutura foi toda gerada pelo Jboss Seam-gen, e estou tentando alterar o CRUD para deixá-lo funcional, mas não estou conseguindo isso.
Agradeço a todos.
