Problema com Escopos

2 respostas
J

Olá amigos
Estou com uma dúvida em relação aos escopos JSF.

Bom, estou desenvolvendo uma aplicação, onde tenho uma interface de cadastro, por exemplo, e nessa interface tenho o formulário de edição, e embaixo a dataTable. Ao clicar para editar um item da dataTable, todos os campos são setados com os devidos valores. Porém, 2 desses componentes são selectOneMenu, onde eles carregam valores de outra tabela (chave estrangeira).
Usando o ViewScoped funciona perfeitamente, pois ao clicar no item a ser editado, o item correto no selectOneMenu já é setado de acordo com o que foi salvo no banco.
Porém, se for pra eu ter o formulário de edição em uma página, e a dataTable em outra já nao funciona, pois com a mudança de pagina o escopo é perdido.
Como eu poderia fazer então? pois da forma q eu tinha tentado, ele carrega todos os campos certos, menos os SelectOneMenu, sendo que nestes, sempre são setados os primeiros valores da lista.

Agradeço desde já!

2 Respostas

drsmachado

JavaS:
Olá amigos
Estou com uma dúvida em relação aos escopos JSF.

Bom, estou desenvolvendo uma aplicação, onde tenho uma interface de cadastro, por exemplo, e nessa interface tenho o formulário de edição, e embaixo a dataTable. Ao clicar para editar um item da dataTable, todos os campos são setados com os devidos valores. Porém, 2 desses componentes são selectOneMenu, onde eles carregam valores de outra tabela (chave estrangeira).
Usando o ViewScoped funciona perfeitamente, pois ao clicar no item a ser editado, o item correto no selectOneMenu já é setado de acordo com o que foi salvo no banco.
Porém, se for pra eu ter o formulário de edição em uma página, e a dataTable em outra já nao funciona, pois com a mudança de pagina o escopo é perdido.
Como eu poderia fazer então? pois da forma q eu tinha tentado, ele carrega todos os campos certos, menos os SelectOneMenu, sendo que nestes, sempre são setados os primeiros valores da lista.

Agradeço desde já!


Considere as páginas lista.xhtml e altera.xhtml.
Você criou uma dataTable e em cada item existe um link que invoca a página altera.
Creio que você deva chamar um método no backing bean e, ao fim deste, direcionar para a página altera.
Não?

J

drsmachado:
JavaS:
Olá amigos
Estou com uma dúvida em relação aos escopos JSF.

Bom, estou desenvolvendo uma aplicação, onde tenho uma interface de cadastro, por exemplo, e nessa interface tenho o formulário de edição, e embaixo a dataTable. Ao clicar para editar um item da dataTable, todos os campos são setados com os devidos valores. Porém, 2 desses componentes são selectOneMenu, onde eles carregam valores de outra tabela (chave estrangeira).
Usando o ViewScoped funciona perfeitamente, pois ao clicar no item a ser editado, o item correto no selectOneMenu já é setado de acordo com o que foi salvo no banco.
Porém, se for pra eu ter o formulário de edição em uma página, e a dataTable em outra já nao funciona, pois com a mudança de pagina o escopo é perdido.
Como eu poderia fazer então? pois da forma q eu tinha tentado, ele carrega todos os campos certos, menos os SelectOneMenu, sendo que nestes, sempre são setados os primeiros valores da lista.

Agradeço desde já!


Considere as páginas lista.xhtml e altera.xhtml.
Você criou uma dataTable e em cada item existe um link que invoca a página altera.
Creio que você deva chamar um método no backing bean e, ao fim deste, direcionar para a página altera.
Não?

Tá, mas o problema é que não tava carregando o item certo no selectOneMenu
Mas usando tudo na mesma página com o ViewScoped da certo, mas eu queria saber da outra forma tmb

Criado 4 de agosto de 2013
Ultima resposta 8 de ago. de 2013
Respostas 2
Participantes 2