Objeto perdendo o estado na navegação entre páginas

Amigos,

Estou mexendo com JSF2, componente dataTable. Nele, eu tenho uma coluna com um botão de alterar. Quando clico nele, uma nova página é aberta onde os dados desse registro deveriam ser exibidos para edição, o que não está acontecendo. Quando a nova tela se abre, todos os campos estão vazios. Como fazer para que o estado do objeto seja restaurado nesta proxima tela?

Coluna com o botao de alteração:

 <p:column style="width:32px">  
	<h:commandLink action="#{clienteBean.prepararAlterar}" >
	   <p:commandButton update="display" image="ui-icon ui-icon-refresh" >  
		<f:setPropertyActionListener value="#{cliente}" target="#{clienteBean.cliente}" />
          </p:commandButton> 
	 </h:commandLink>  
</p:column> 

O Managed Bean está com o escopo padrão (Request).
O código do prepararAlterar é esse:

public String prepararAlterar(){
	System.out.println(cliente.getNomeCompleto());
	return "cadastrocliente";
}

Obrigado!

altera o scope do bean pra session e testa, acho q vc deveria setar o cliente na classe que tem a action que irá ser executada.

Colocando o ManagedBean na session realmente funciona, mas não é o modo correto de fazer.
Eu queria recuperar o estado do objeto em escopo de Request ou View. Tem que ter como fazer isso, não é possível.

Na apostila, eu li que o JSF é StateFull… Não entendi. Se fosse StateFull, o estado do objeto nao deveria ser mantido?
Colocando o objeto na Session, até o Struts se torna Statefull tb…

To enrolado! De qualquer forma, obrigado pela ajuda irmão,

Trabalho com @ViewScoped e funciona legal. Veja se atende ao que você precisa.

NEste meu caso, só funciona com o Session mesmo.
Até com o View dá erro.
Eu acho que é devido a troca de páginas. No exemplo que estudei o ViewScope funcionava, mas os dados do objeto eram resgatados para a propria página.