Meu rich:dataTable nao funciona

6 respostas
F

oi pessoal, mais uma duvida. Estou com problema na minha rich:dataTable

meu problema é que quando vou tentar declarar um <h:outputText value=#{cliente.cpf} > por exemplo eu nao acho a var=“cliente” que eu declarei na tabela. O eclipse me da um erro de que cliente cannot be resolved. Algem ja teve problema parecido ? se eu criar uma tabela com o <h:dataTable value="#{controladorCliente.clienteList}" var=“cliente”>
funciona <h:outputText value=#{cliente.cpf} >

meu jsp:

<rich:dataTable styleClass=“lista” style=“background-color: #f7f7e7;”

id=“clienteList” rows=“10”

value="#{controladorCliente.clienteList}"    // é uma List

var=“cliente” >

<f:facet name=“header”>

<rich:column width=“150”>

<h:outputText styleClass=“headerText” value=“CNPJ” />

</rich:column>

</f:facet>

<a>rich:subTable</a>

<rich:column width=“150”>

<h:outputText id=“cnpj” value="#{cliente.cgc}">

</h:outputText>

</rich:column>

</rich:dataTable>

6 Respostas

S

estranho !!

post seu BackingBean ai…

F

la vai:
public class ControladorCliente {

private String retorno = "";

public Cliente cliente = new Cliente();
public List<Cliente> clienteList = new ArrayList<Cliente>();
public String razaoSocial = "";

/**
 * @return the razaoSocial
 */
public String getRazaoSocial() {
	return razaoSocial;
}

/**
 * @param razaoSocial the razaoSocial to set
 */
public void setRazaoSocial(String razaoSocial) {
	this.razaoSocial = razaoSocial;
}

/**
 * @return the cliente
 */
public Cliente getCliente() {
	return cliente;
}

/**
 * @param cliente the cliente to set
 */
public void setCliente(Cliente cliente) {
	this.cliente = cliente;
}

/**
 * @return the listaCliente
 */
public List<Cliente> getClienteList() {
	return clienteList;
}

/**
 * @param listaCliente the listaCliente to set
 */
public void setClienteList(List<Cliente> arrayCliente) {
	this.clienteList = arrayCliente;
}


/**
 * 
 */
public ControladorCliente() {
}

public String listaClientes(){
	try {
		this.clienteList = Fachada.obterInstancia().FachadaConsultarTodosClientes();
		retorno = SUCESSO_LISTA_CLIENTE;
	} catch (Exception e) {
		retorno = ERRO_LISTA_CLIENTE;
		e.printStackTrace();
	}
	return retorno;
}

}

Cabazzo

Fábio troque as seguintes linhas:

public Cliente cliente = new Cliente();

public List clienteList = new ArrayList();

public String razaoSocial = “”;

por estas :

public Cliente cliente;

public List clienteList;

public String razaoSocial;

Não inicialize elas, e sim as preencha nos métodos.

F

Obrigado pela ajuda.

F

e ae fabio blz

eu to com esse problema tb
eu fiz o que o Cabazzo disse mas mesmo assim nao funcionou :frowning:
tu conseguiu resolver?

F

Olha, descobri que quando tinha algum valor null em algum campo das minhas tabelas no banco de dados o richfaces criava uma tabela vazia. Quando tcoloquei algum valor nesses campos null a tabela foi criada certinha. Da uma checada no teu banco e ve se tais pegando variaveis que tem valor null.

Basicamente me datatable ficou assim:

Criado 13 de novembro de 2007
Ultima resposta 16 de abr. de 2008
Respostas 6
Participantes 4