O ArrayList que criei pra receber os dados de uma datatable sempre vem vazio
Página pra mostrar todos os produtos e receber a quantidade(Isso funciona)
<?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://xmlns.jcp.org/jsf/html"
xmlns:p="http://primefaces.org/ui"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets">
<h:head>
<title>Produtos</title>
</h:head>
<h:body>
<h:form>
<p:panel header="Produtos">
<p:commandButton value="Voltar" action="index.xhtml" styleClass="ui-priority-primary" ajax="false"/>
<p:dataTable var="produto" value="#{principalMB.produtos}">
<p:column headerText="Código">
<h:outputText value="#{produto.id}" />
</p:column>
<p:column headerText="Nome">
<h:outputText value="#{produto.descricao}" />
</p:column>
<p:column headerText="Quantidade">
<h:inputText id="quantidade" value="#{principalMB.itemdopedido.quantidade}" />
</p:column>
<p:column headerText="Add">
<p:commandButton value="Adicionar ao carrinho" id="alterar" action="#{principalMB.adicionarCarrinho(idproduto, principalMB.itemdopedido.quantidade)}" styleClass="ui-priority-primary" ajax="false"/>
</p:column>
<p:column>
<a href="carrinho.jsf">Ver carrinho</a>
</p:column>
</p:dataTable>
</p:panel>
</h:form>
</h:body>
</html>
ManagedBean (Parte que interessa)
@Named(value = "principalMB")
//@RequestScoped
@SessionScoped
public class PrincipalMB implements Serializable {
private ArrayList<ItemDoPedido> itens = new ArrayList<ItemDoPedido>();
ItemDoPedido i = new ItemDoPedido();
Produto p = new Produto();
public void adicionarCarrinho(int idproduto, int quantidade){
i.setIdproduto(p.getId());
i.setQuantidade(quantidade);
itens.add(i);
}
Tela pra mostrar o carrinThis text will be hiddenho
<!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://xmlns.jcp.org/jsf/html"
xmlns:p="http://primefaces.org/ui"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets">
<h:head>
<title>Produtos</title>
</h:head>
<h:body>
<h:form>
<p:panel header="Carrinho">
<p:commandButton value="Voltar" action="index.xhtml" styleClass="ui-priority-primary" ajax="false"/>
<p:dataTable var="item" value="#{principalMB.itens}">
<p:column headerText="Código">
<h:outputText value="#{item.idproduto}" />
</p:column>
<p:column headerText="Nome">
<h:outputText value="#{item.quantidade}" />
</p:column>
<p:column headerText="Add">
<p:commandButton value="Finalizar" id="alterar" action="#" styleClass="ui-priority-primary" ajax="false"/>
</p:column>
</p:dataTable>
</p:panel>
</h:form>
</h:body>
</html>
Não consigo inserir em um ArrayList
S
Criado 20 de setembro de 2018
Respostas 0
Participantes 1
Alura Sistemas operacionais: entenda seu conceito e suas funções Descubra o que são sistemas operacionais, suas funções e tipos. Aprenda tudo de forma clara e objetiva. Não perca tempo!
Casa do Codigo Orientacao a Objetos: Aprenda seus conceitos e suas... Por Thiago Leite e Carvalho — Casa do Codigo