JSF Problemas com t:saveState

Estou tendo problemas em passar meu bean da tela de listagem para a edicao:

O usuarioBean esta como request.
Debugei e na linha 16 do usuarioBean, ele realmente pega todos os dados do usuario em questao a ser editado do datatable, mas quando vai para a tela onde ha o formulario de cadastro/edicao os campos aparecem todo em branco, ou seja ele nao guarda/envia o estado, to com 2 dias nisso =( e parece ser algo simplista. :?

eis o [listagem.xhtml]

[code]
<ui:define name=“body”>
<t:saveState id=“save” value="#{usuarioBean.usuario}"/>
<h:form>

<h:panelGrid columns=“1” columnClasses=“center”>
				<rich:dataTable id="listagem" value="#{usuarioBean.listarUsuarios}"
					var="usuario"
					onRowMouseOver="this.style.backgroundColor='#F1F1F1'"
					onRowMouseOut="this.style.backgroundColor='#{a4jSkin.tableBackgroundColor}'"
					border="1" cellspacing="0" cellpadding="2" rows="5"
					styleClass="rich-table" >
					<rich:column>
						
						<f:facet name="header">
							<h:outputText value="ID" />
						</f:facet>
                                            <h:outputText value="#{usuario.codigo}" />
					</rich:column>

…os outros outputs…
rich:column
<f:facet name=“header”>
<h:outputText value="" />
</f:facet>
<h:commandLink action="#{usuarioBean.excluir}"
value="#{msg[‘commons.excluir’]}">
<f:setPropertyActionListener value="#{usuarioBean}" target="#{usuario}" />
</h:commandLink>


<h:commandLink action="#{usuarioBean.editar}" value="#{msg[‘commons.editar’]}">
<f:setPropertyActionListener value="#{usuarioBean}" target="#{usuario}" />
</h:commandLink>
</rich:column>

</ui:define>
</ui:composition>[/code]

eis o treco que interessa do [UsuarioBean.java]

[code]
public class UsuarioBean implements Serializable{
private static final long serialVersionUID = 8798812512424289176L;
/**
* Referencia para a camada de regras de negocio.
/
private UsuarioBusiness usuarioBusiness = new UsuarioBusiness();
/
*
* Usuario a serusado no form.
*/
private Usuario usuario=new Usuario();

    public ListDataModel getListarUsuarios() {
	return usuarioBusiness.listarUsuariosBusiness();
}
    public String editar(){
	usuario=usuarioBusiness.getUsuarioManaged();
	return "cadastrarUsuario";
}[/code]

eis o UsuarioBusiness.java

public class UsuarioBusiness {
	
	private UsuarioDAO usuarioDao=new UsuarioDAO();
	private ListDataModel model;
        public Usuario getUsuarioManaged(){
		Usuario usuario = (Usuario) model.getRowData();
		return usuario;
	}
        public void excluirUsuario() {
		usuarioDao.excluirUsuario(getUsuarioManaged());
	}
.....
       public ListDataModel listarUsuariosBusiness() {
		return model = new ListDataModel (usuarioDao.listarUsuariosDAO());
	}[/code]

eis o [cadastro.xhtml]
[code]<ui:composition template="/templates/common.xhtml">
	<ui:define name="header">
	Cadastro de Usuários
	</ui:define>
	
	<ui:define name="body">
	<t:saveState id="save2" value="#{usuarioBean.usuario}"/>  	
		<h:form id="usuarioForm">
			<h:panelGrid columns="3" columnClasses="right,left,left">
				<h:outputLabel for="emailInput"
					value="#{msg['page.usuarios.label.email']}" />
				<h:inputText id="emailInput" value="#{usuarioBean.usuario.email}"
					required="true" requiredMessage="#{msg['erros.cadastro.nome']}" />
				<h:message for="nomeInput" style="color: red" />
....form basico de edicao...........
<h:commandButton action="#{usuarioBean.salvar}"
				value="#{msg['commons.salvar']}" />

			<h:commandButton action="listarUsuarios"
				value="#{msg['commons.voltar']}" immediate="true" />
		</h:form>
	</ui:define>
</ui:composition>

eis o [web.xml]

[code]

usuarioBean
beans.UsuarioBean
request

cadastrarUsuario /pages/cadastrousuario.xhtml listarUsuarios /pages/listarusuario.xhtml [/code] pois entao, desculpem o tamanho codigo postado, mais para melhor percepeção de quem possame ajudar...

ah, o excluir fuciona perfeitamente.
Grato desde ja!
Abs. :wink:

help again. :?