Boa noite
Preciso fazer uma paginação em uma aplicação JSF que eu estou fazendo e preciso também transportar dados de uma pagina para outra. Ex:
LAENDER > Editar
No caso LAENDER deve ser enviado para uma pagina de edição levando todos os seus dados para que os mesmos possam ser editados.
Não estou conseguindo mudar de uma pag para outra, tão pouco consigo levar os dados de uma para outra.
Estou utilizando Netbeans JSF2.1 e PrimeFace.
Desde já, grato.<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:p="http://primefaces.org/ui"
xmlns:f="http://java.sun.com/jsf/core">
<h:head>
<title>Facelet Title</title>
</h:head>
<h:body>
<p:panelGrid columns="2">
<h:form>
<h:outputText value="id"/>
<h:inputText value="#{daoCliente.seleciona.id}"/>
<h:outputText value="cliente"/>
<h:inputText value="#{daoCliente.seleciona.nome}"/>
<h:outputText value="lista"/>
<p:dataList value="#{daoCliente.list()}" var="opicoes">
Id:#{opicoes.id} Nome:#{opicoes.nome} Idade:#{opicoes.idade} <h:commandLink actionListener="#{daoCliente.preparaEdicao}" value="Editar" />
</p:dataList>
<br />
<h:commandLink actionListener="#{daoCliente.save()}" value="Salvar" />
<br />
<h:commandLink actionListener="#{daoCliente.exibirLista()}" value="Listar" />
<br />
</h:form>
</p:panelGrid>
Hello from Facelets
</h:body>
</html>
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package Dao;
import Model.Cliente;
import Util.HibernateUtil;
import java.io.IOException;
import java.io.Serializable;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.context.FacesContext;
import org.hibernate.Session;
import org.hibernate.Transaction;
/**
*
* @author LAENDER
*/
@ManagedBean(name = "daoCliente")
@SessionScoped
public class DaoCliente implements Serializable{
public Cliente recursos;
Session s = HibernateUtil.getSessionFactory().getCurrentSession();
Transaction t;
public Cliente getSeleciona(){
if(recursos == null){
recursos = new Cliente();
// item = - 1;
}
return recursos;
}
public String save(){
Session s = HibernateUtil.getSessionFactory().getCurrentSession();
Transaction t = s.beginTransaction();
s.save(recursos);
t.commit();
s.close();
return "Create";
}
public String update(){
Session s = HibernateUtil.getSessionFactory().getCurrentSession();
Transaction t = s.beginTransaction();
s.update(recursos);
t.commit();
s.close();
return "editar.xhtml";
}
public Cliente getCliente(int id){
Session s = HibernateUtil.getSessionFactory().getCurrentSession();
return (Cliente) s.load(Cliente.class, id);
}
public void remove(Cliente cliente){
Session s = HibernateUtil.getSessionFactory().getCurrentSession();
Transaction t = s.beginTransaction();
s.delete(cliente);
t.commit();
s.close();
}
public List<Cliente> list() {
Session s = HibernateUtil.getSessionFactory().getCurrentSession();
Transaction t = s.beginTransaction();
List lista = s.createQuery("from Cliente").list();
t.commit();
return lista;
}
public String exibirLista(){
List<Cliente> list = list();
String listando= "";
for(Cliente c : list){
listando += c.getId()+c.getNome()+c.getIdade();
}
return listando;
}
public String preparaEdicao(){
try {
FacesContext.getCurrentInstance().getExternalContext().redirect("editar.xhtml");
} catch (IOException ex) {
Logger.getLogger(DaoCliente.class.getName()).log(Level.SEVERE, null, ex);
}
return "editar.xhtml";
}
}