O que eu faço é registrar os dados em uma tela e redireciono para outra, a unica coisa que eu não consigo forçar a atualização da página.
[]´s
Nilson
Hebert_Coelho
nilsonmassarenti:
Bom dia,
estou usando o session.
O que eu faço é registrar os dados em uma tela e redireciono para outra, a unica coisa que eu não consigo forçar a atualização da página.
[]´s
Nilson
E como vocÊ faz isso?
N
nilsonmassarenti
é o seguinte. Eu tenho uma página de cadastro de uma venda. Ele pode registrar quantos vendas quiser.
Depois que ele termina de fazer tudo o que quer, ele acessa a página (diferente do cadastro) que ve todas as compras registradas.
Como eu disse, quando a página nunca foi carregada, ele carrega todos os dados, mas se em algum momento foi carregada, todos os dados anteriores ficam em “CACHE” e não são carregado novas atualizações.
Para sintetizar é realizado uma compra, o cara clica no menu bar e é redirecionado para o relatório das compras.
Rodrigo_Sasaki
nilsonmassarenti:
é o seguinte. Eu tenho uma página de cadastro de uma venda. Ele pode registrar quantos vendas quiser.
Depois que ele termina de fazer tudo o que quer, ele acessa a página (diferente do cadastro) que ve todas as compras registradas.
Como eu disse, quando a página nunca foi carregada, ele carrega todos os dados, mas se em algum momento foi carregada, todos os dados anteriores ficam em “CACHE” e não são carregado novas atualizações.
Para sintetizar é realizado uma compra, o cara clica no menu bar e é redirecionado para o relatório das compras.
Amigão, tente ser mais assertivo.
quando alguém pergunta como você fez? provavelmente está querendo código.
Com certeza a explicação do funcionamento da tela pode ajudar, mas se postar códigos de exemplo, vai facilitar muito mais a vida de todos
N
nilsonmassarenti
Meus caros,
conforme o digaoneves disse para ser mais direto nas coisas. Acho que eu fui claro que é forçar a atualização de uma página jsf esm precisar aplicar um update no dataTable, sabendo que ao acaso posso chamar a página (Código no primeiro POST). Caso não tenha ficado claro, preciso saber o que preciso postar para ajudar.
Amigo como os colegas acima falaram, daria para ser feito usando ajax do primefaces, que é um ótimo recurso, agora já que você não quer usar, você pode usar esse método na sua bean após a execução do conteudo do método chamado você chamaria esse método
ele ira forçar o contexto do JSF, para que o mesmo seja atualizado.
entendeu?
N
nilsonmassarenti
Sò ficou uma dúvida. em qual momento ele irá chamar o salvar?
RafaelCassau
Então cara é muito simples, na sua pagina .XHTML você não tem um botão com action chamando um método qualquer na bean seja ele salvar alterar ou excluir ou consultar
ex:
#{pessoaBean.salvar}#{pessoaBean.alterar}
etc. isso são EL expression Language que chamam métodos diretamente na sua Bean, certo?
então dentro de um método qualquer que você queira fazer com que a pagina .XHTML seja recarregada você chama esse método refresh
public void seuMetodo(){
suaController.save(seuObjeto); // até aqui é tudo normal a unica diferença, ou seja onde seu método será chamado é aqui
this.refresh();
}
public void refresh() {
FacesContext context = FacesContext.getCurrentInstance();
Application application = context.getApplication();
ViewHandler viewHandler = application.getViewHandler();
UIViewRoot viewRoot = viewHandler.createView(context, context.getViewRoot().getViewId());
context.setViewRoot(viewRoot);
context.renderResponse();
}