Meu Bean:
package br.com.caelum.notasfiscais.bean;
import br.com.caelum.notasfiscais.mb.Produto;
import java.util.ArrayList;
import java.util.List;
import br.com.caelum.notasfiscais.dao.ProdutoDao;
public class ProdutoBean {
// private Produto produto; //pega os atributos da classe Produto
private Produto produto = new Produto();// pega os atributos da classe Produto
private List produtos;
List valorTotal = new ArrayList();
public Produto getProduto() {
return this.produto;
}
public void setProduto(Produto produto) {
this.produto = produto;
}
public void grava() {
ProdutoDao dao = new ProdutoDao();
dao.save(produto);
this.produto = new Produto(); // Limpar campos criando uma nova instancia
this.produtos = dao.listaTodos();
}
//@SuppressWarnings("unused")
public List<Produto> getProdutos() {
Double precos = 0.0;
if (produtos == null) {
System.out.println("Carregando produtos...");
produtos = new ProdutoDao().listaTodos();
for (Produto produto : produtos) {
precos = produto.getPreco();
valorTotal.add(precos);
}
System.out.println("Totaal: " + valorTotal);
}
return produtos;
}
}
Minha VIEW:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<h:head>
Sistema de Notas Fiscais <h:outputLabel value="Descrição:" for="descricao" />
<h:inputTextarea id="descricao" value="#{produtoBean.produto.descricao}"/>
<h:outputLabel value="Preço:" for="preco" />
<h:inputText id="preco" value="#{produtoBean.produto.preco}"/>
<h:commandButton value="Gravar" action="#{produtoBean.grava}" />
</h:panelGrid>
</h:form>
<br />
<h:dataTable value="#{produtoBean.produtos}" var="produto">
<h:column>
<f:facet name="header">Nome</f:facet>
#{produto.nome}
</h:column>
<h:column>
<f:facet name="header">Descrição</f:facet>
#{produto.descricao}
</h:column>
<h:column>
<f:facet name="header">Preço</f:facet>
#{produto.preco}
<f:facet name="footer" value="">Total: </f:facet>
#{produtoBean.getProdutos()}
</h:column>
</h:dataTable>
</h:body>
QUERO MOSTRAR O VALOR TOTAL DA SOMA DOS PREÇOS DE TODOS OS PRODUTOS (AINDA NÃO SOMEI). QUERIA SABER COMO FAÇO ISSO, TENTEI MUITO E NÃO TO CONSEGUINDO.
EU GOPSTARIA DE POR ESSE TOTAL NESSE FOOTER:
<f:facet name=“footer” value="">Total: </f:facet>
#{produtoBean.getProdutos()}
É POSSÍVEL?