Problemas ao inserir dados de um Table em outro Table

Bom Galera, o problema é o seguinte:
Eu tenho uma tabela de Produtos, onde eu posso selecionar um Produto e inserir ele em um ArrayList que representa a Lista de Venda.
Bem eu consigo inserir normalmente, porém quando vou inserir o segundo item ao invés de o Array inserir o segundo item ele esta criando outro ArrayList assim exibindo somente o que foi escolhido naquele momento:
Vou postar o Código.
Produtos a Serem selecionados:

[code]<p:dialog id=“JanelaProduto” widgetVar=“janelaProduto” width=“1024”
position=“center” modal=“true” closeOnEscape=“true”
minWidth=“600” >

  				<h:form id="tabelaProduto">
  					<p:outputPanel id="Painel" >	
  						<p:dataTable paginator="true"
									 paginatorPosition="bottom"
									 rows="20"
									 value="#{produtoBean.produtos}"
									 var="produto"
									 emptyMessage="Nenhum Produto Cadastrado !"
									 update="dadosProduto,dadosProduto2">
				
							<p:column headerText="ID" style="width:50px;">
								<h:outputText value="#{produto.id}"/>
							</p:column>
			
							<p:column headerText="DESCRIÃ?Ã?O" sortBy="true">
								<h:outputText value="#{produto.descricao}"/>
							</p:column>	
								
							<p:column style="width:35px;">
								<f:facet name="header">
									<h:outputText value="#"/>
								</f:facet>
								<p:commandButton update="dados_Produto" ajax="false" oncomplete="janelaProduto.hide()"
												 image="ui-icon-circle-check">
									 <f:setPropertyActionListener target="#{vendaBean.produtoSelecionado}" value="#{produto}"/>
								</p:commandButton>
										
							</p:column>
							
						</p:dataTable>
						
			  		</p:outputPanel>
  				</h:form>
				
		    </p:dialog>

[/code]

Exibe os Produtos Selecionados:

[code]<h:panelGrid id=“dados_Produto2” columns=“1” columnClasses=“colunaEsquerda,colunaDireita”>

											<p:commandButton image="ui-icon-search" action="update" 
																 ajax="true" immediate="true" oncomplete="janelaProduto.show()"/>
										</h:panelGrid>
															 
											<p:dataTable id="dados_Produto"  
													 paginator="true"
													 paginatorPosition="bottom"
													 rows="10"
													 value="#{vendaBean.vendas}"
													 var="venda"
													 emptyMessage="Nenhuma Venda Efetuada !">
																				
											
												<p:column headerText="Cód." style="width:30px;">
													<h:outputText value="#{venda.produto.id}"/>
												</p:column>
												
												<p:column headerText="Descrição">
													<h:outputText value="#{venda.produto.descricao}"/>
												</p:column>
												
												<p:column headerText="U.M" style="width:30px;">
													<h:outputText value="#{venda.produto.unidade_medida}"/>
												</p:column>
												
												<p:column headerText="Qtd" style="width:30px;">
													<p:cellEditor>
														<f:facet name="output">
															<h:outputText value="#{venda.quantidade}"/>
														</f:facet>
														<f:facet name="input">
															<p:inputText value="#{venda.quantidade}"/>
														</f:facet>	
													</p:cellEditor>	
												</p:column>
												
												<p:column headerText="P.Uni" style="width:30px;">
														<p:cellEditor>
														<f:facet name="output">
															<h:outputText value="#{venda.vlrUnit}"/>
														</f:facet>
														<f:facet name="input">
															<p:inputText value="#{venda.vlrUnit}"/>
														</f:facet>	
													</p:cellEditor>
												</p:column>
												
												<p:column headerText="Total" style="width:40px;">
														<p:cellEditor>
														<f:facet name="output">
															<h:outputText value="#{venda.vlrTotal}"/>
														</f:facet>
														<f:facet name="input">
															<p:inputText value="#{venda.vlrTotal}"/>
														</f:facet>	
													</p:cellEditor>
												</p:column>
												
												<p:column>
													<p:rowEditor/>
												</p:column>	
											</p:dataTable>

[/code]

Bean
Uso o “produtoSelecionado” para inserir na List de Vendas !!

[code]public class VendaBean implements Serializable{

private EntityManager entityManager;
private Cliente clienteSelecionado;
private Produto produtoSelecionado;
private Plano   planoSelecionado;
private Funcionario funcionario;
private Venda venda;
private List<Produto> produtos;
private List<Venda> vendas = new ArrayList<Venda>();
Double quantidade;


    public List<Venda> getVendas() {
	
	System.out.println("GETVendas");
	for (Venda v : vendas)
		System.out.println("Size: "+ vendas.size() +" | Item: "+v.getProduto().getDescricao());
	
	return vendas;
	
}

    public void setProdutoSelecionado(Produto produtoSelecionado) {
	System.out.println("SET PRODUTO SELECIONADO: "+ produtoSelecionado.getDescricao());
	this.produtoSelecionado = produtoSelecionado;
	
		venda = new Venda();
		
    	        System.out.println("SPS -> VENDAS");
		this.venda.setProduto(this.produtoSelecionado);
		this.vendas.add(venda);
			
		this.produtoSelecionado = new Produto();
		this.venda = new Venda();
			
}
public Plano getProdutoSelecionado() {
	System.out.println("GET PRODUTO SELECIONADO");
	return produtoSelecionado;
}

}[/code]

Se alguem puder me ajudar agradeço …

Seu MB é RequestScoped ? Se for tente usar ViewScoped.

Esqueci de postar esse detalhe … ele é de Session

[code]/**

  • @author Diego

*/
@ManagedBean
@SessionScoped
public class VendaBean implements Serializable[/code]

Bem já entendi o problema … mas não consigo resolver …
A que acontece é o seguinte …
Eu escolho o primeiro Objeto(Produto), então é criado um ArrayList para receber o mesmo, ate então beleza …
Quando vou escolher o segundo produto ele apenas teria que inserir no Array já criado, porém o JSF esta criando um NOVO ARRAY, mas não sei como resolver isso, se o Escopo fosse de Request ou View tudo bem, pois seria tudo reprocessado mas é de Session então ele teria que manter o Objeto “VIVO” …
Se alguem tiver ideia de como resolver isso agradeço …