Pessoal, estou com uma dúvida que está me impedindo de avançar em um projeto JSF Primefaces.
Tenho uma datatable que recebe valores de uma lista, mas esse valores não estão sendo mostrados na table. Já tentei de tudo x.x
Entidade Cliente:
package Model.Entity;
public class Cliente {
private String nome;
private String email;
private String endereco;
private String telefone;
public String getNome() { return nome; }
public void setNome(String nome) { this.nome = nome; }
public String getEmail() { return email; }
public void setEmail(String email) { this.email = email; }
public String getEndereco() { return endereco; }
public void setEndereco(String endereco) { this.endereco = endereco; }
public String getTelefone() { return telefone; }
public void setTelefone(String telefone) { this.telefone = telefone; }
}
ClienteBean
package Model.Bean;
import Model.Entity.Cliente;
import java.util.List;
import java.util.ArrayList;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
/**
*
@author santorinoneto
*/
@ManagedBean
@SessionScoped
public class ClienteBean {
private Cliente cliente = new Cliente();private final List clientes = new ArrayList<>();
public void adicionar(){
clientes.add(cliente);
cliente = new Cliente();
}
public Cliente getCliente() { return cliente; }
public void setCliente(Cliente cliente) { this.cliente = cliente; }
public List<Cliente> getClientes() { return clientes; }
}
View
<?xml version='1.0' encoding='UTF-8' ?> Tetrasoftaction="cadastro.xhtml">Cadastro
action="Pesquisa.xhtml">Pesquisa<h:outputLabel for="email" value="Email:"></h:outputLabel> <p:inputText id="email" value="#{clienteBean.cliente.email}"></p:inputText> <h:outputLabel for="endereco" value="Endereço"></h:outputLabel> <p:inputText id="endereco" value="#{clienteBean.cliente.endereco}"></p:inputText> <h:outputLabel for="telefone" value="Telefone"></h:outputLabel> <p:inputMask id="telefone" mask="(99)9999-9999" value="#{clienteBean.cliente.telefone}"></p:inputMask> <p:selectOneRadio id="console" value="#{radioView.console}"> <f:selectItem itemLabel="masculino" itemValue="Masculino" /> <f:selectItem itemLabel="feminino" itemValue="Feminino" /> </p:selectOneRadio> <br /> <p:selectManyCheckbox id="basic"> Newsletter <f:selectItem itemLabel="Sim" itemValue="Newsletter" /> </p:selectManyCheckbox> <br /><br /><p:commandButton value="Salvar#{clienteBean.adicionar()}"></p:commandButton> </h:panelGrid> <br /> <p:dataTable var="c" value="#{clienteBean.cliente}"> <p:column headerText="Nome"> <h:outputText value="#{c.nome}" /> </p:column> <p:column headerText="E-mail"> <h:outputText value="#{c.email}" /> </p:column> <p:column headerText="Endereço"> <h:outputText value="#{c.endereco}" /> </p:column> <p:column headerText="Telefone"> <h:outputText value="#{c.telefone}" /> </p:column> </p:dataTable> </p:panel> </h:form> </p:layoutUnit>
Tenho outra dúvida também. Como faço para redirecionar pra outra página a partir de um commandLink? Não está dando certo da forma que eu tentei.