Atualizar dados no banco vindo do dataTable [RESOLVIDO]

Boa tarde amigos,

To com o seguinte problema de lógica, tenho um panelGrid com apenas um input que consulto o produto por código e ao consultar
ja adiciono ele em um dataTable pra exibilido na tela segue abaixo trechos do código pra facilitar o entedimento

<h:form id="form">
   		<p:messages id="messages" showDetail="true" showSummary="true"/>
   			<h:panelGrid>
   				<h:outputText value="Digite o código: " />
   				<p:inputText value="#{produtoBean.codigo}" converter="converterCod"/>
   			</h:panelGrid>
   			
   			<h:panelGrid>
   				<p:commandButton value="Procurar" action="#{produtoBean.findProduto()}" update="form:messages, form:dataTb">
   				</p:commandButton>
   			</h:panelGrid>
   			
   			<p:dataTable id="dataTb" value="#{produtoBean.listaUpdate}" var="prod"
   				emptyMessage="Não há nada aqui! flw">
   				
   				<p:column headerText="Codigo">
   					<h:inputText value="#{prod.codigo}"  style="text-align:center"/>
   				</p:column>
   				
   				<p:column headerText="Produto">
   					<h:inputText value="#{prod.nome}" style="text-align:center"/>
   				</p:column>
   				
   				<p:column headerText="Qtde(Estoque)">
   					<h:inputText value="#{prod.qtde}" style="text-align:center"/>
   				</p:column>
   				
   				<p:column headerText="Preço(R$)">
   					<h:inputText value="#{prod.preco}" style="text-align:center"/>
   				</p:column>
   				
   				<p:column headerText="Data cadastro">
   					<p:calendar value="#{prod.dataCadastro}" converter="converterDate"/>
   				</p:column>
   				
   				<f:facet name="footer">
   					<p:commandButton value="Atualizar" action="#{produtoBean.atualiza()}" update="form:messages">
   					</p:commandButton>
   				</f:facet>
   				
   			</p:dataTable>
   			
   		</h:form>

ManageBean


@ManagedBean
@SessionScoped
public class ProdutoBean {
[...]

//Esta instanciado no constructor, esta instancia é uzada pra salvar do qual n esta sendo exibido aqui
//Obviamente se eu passar esse produto como parametro do metodo atualizar vai estorar null
private Produto produto;

//Crio a lista do dataTable acima
private List<Produto> listaUpdate = new ArrayList<Produto>();

//Método pra atulizar os produtos
public void atualiza(){
		try {
                        //Método que vem do EJB pra atualizar
			Produto produtoAtualizado = prodLocal.update(/*parametro*/);
			
			messagem("Produto: " + "'"+produtoAtualizado.getNome()+"'" + " atualizado com sucesso!");
			
		} catch (Exception e) {
			messagemError("Error ao atualizar!");
			e.printStackTrace();
		}
	}

Meu problema aqui ta no atualizar, obviamente se eu passar aquele produto no parametro estora null, porque crio um novo ArrayList só pra exibir os produtos e os inputs do DataTable são os atributos da lista que criei… ai essa é a questão, como vou passar pro Manage que quero atulizar o produto do qual procurou… deu pra entender?

Abraço

Voce tem que passar via setPropertyActionListener, ai o “Set” irá chamar o método que faz a sua ação !!

[code]
<p:commandButton update=“formLancamento” ajax=“false” oncomplete=“janelaPlano.hide()“
icon=“ui-icon-circle-check”>
<f:setPropertyActionListener target=”#{lancamentoBean.planoSelecionado}” value="#{plano}"/>
</p:commandButton>

private Planos planoSelecionado;

public void setPlanoSelecionado(Planos planoSelecionado) {
this.planoSelecionado = planoSelecionado;
buscaPlanoSelecionado();
}[/code]

[quote=Diego Adriano]Voce tem que passar via setPropertyActionListener, ai o “Set” irá chamar o método que faz a sua ação !!

[code]
<p:commandButton update=“formLancamento” ajax=“false” oncomplete=“janelaPlano.hide()“
icon=“ui-icon-circle-check”>
<f:setPropertyActionListener target=”#{lancamentoBean.planoSelecionado}” value="#{plano}"/>
</p:commandButton>

private Planos planoSelecionado;

public void setPlanoSelecionado(Planos planoSelecionado) {
this.planoSelecionado = planoSelecionado;
buscaPlanoSelecionado();
}[/code][/quote]

Cara, ja tentei usar o set, mas pro meu problema não resolve… porque ele não está ai, não sei se vc entendeu mas o meu problema é que preciso dizer pro método os valores porque está caindo null e como to usando os inputs do dataTable pra exibir a lista eu não sei como salva-los e atualizar pelo código(o código não vai se alterado)

Já consegui aqui amigo, foi um erro de lógica simples :X, fazer o que acontece…
Só precisei setar a posição 0 da lista no parametro do método pra atualizar hehe

ficando assim

Produto produtoAtualizado = this.listaUpdate.get(0);
			prodLocal.update(produtoAtualizado);

Detalhe: nem precisa do setProp

Vc quer alterar 1 registro ou quer alterar um Array [/url]?