Problemas com o @DataModelSelection na paginação por demanda (SEAM)

Galera, boa tarde !!!

estou com problemas na hora de selecionar o registro de um rich:dataTable com paginação por demanda usando SEAM.

Meu Managed Bean:

package br.com.bb.acesso.bean;

import java.util.List;

import javax.faces.component.UIData;
import javax.faces.event.ActionEvent;
import javax.faces.model.DataModel;

import org.jboss.seam.ScopeType;
import org.jboss.seam.annotations.In;
import org.jboss.seam.annotations.Name;
import org.jboss.seam.annotations.Out;
import org.jboss.seam.annotations.Scope;
import org.jboss.seam.annotations.datamodel.DataModelSelection;

import br.com.bb.acesso.entidade.Usuario;
import br.com.bb.acesso.session.local.UsuarioSessionLocal;
import br.com.bb.components.PagedDataModel;

@Name("usuarioBean")
@Scope(ScopeType.EVENT)
public class UsuarioBean extends BaseBean{

	private static final long serialVersionUID = -5160513194906478318L;

	@org.jboss.seam.annotations.datamodel.DataModel
	List<Usuario> usuarios;
	
	@In(create=true)
	private UsuarioSessionLocal usuarioSessionLocal;
	
	private PagedDataModel pagedDataModel;

	@In(create = true)
	private UIData table;
	
	private DataModel tableModel;
	
	@DataModelSelection
	private Usuario usuarioSelecionado;

	@In(required=false)
	@Out(required=false)
	private Usuario usuario;
	
	public DataModel getTableModel(){
		
		if (pagedDataModel == null) {  
        
		    int totalSize = 0;
		    int first = 0;
		    int rows = 5;
		    
		    if(table != null){
		        first = table.getFirst();
		        rows = table.getRows();
		    }
		    try {
		        //consulta a lista de usuarios passando o numero do primeiro resultado, e o numero de linhas para mostrar
		        usuarios = usuarioSessionLocal.getUsuarios(first, rows);
		
		        //consulta o numero total de usuarios cadastrados no banco
		        totalSize = usuarioSessionLocal.getTotalUsuarios().intValue();
		    } catch (Exception e) {
		        e.printStackTrace();
		    }
		
		    // retorna o datamodel com a lista, o numero total e o numero por página
		    return pagedDataModel = new PagedDataModel(usuarios, totalSize, rows);
		}
		
		return pagedDataModel;
        
    }
	
	public String editarUsuario() {
		
		usuario = usuarioSelecionado;
		
		return "editarUsuario";
	}
	
	public Usuario selecionarUsuario(ActionEvent event) {
		return usuarioSelecionado;
	}

}

.xhtml

<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
                      "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
	xmlns:s="http://jboss.com/products/seam/taglib"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:rich="http://richfaces.org/rich"
	xmlns:a4j="http://richfaces.org/a4j"
	template="/resources/template/default.xhtml"
	xmlns:dem="http://facelets.bb.com">

	<ui:define name="tituloNavegacao">
		<h1 class="cont">
			<span> <h:outputText value="Manter Usuário" /> </span>
		</h1>
	</ui:define>

	<ui:define name="conteudo">

		<rich:spacer height="10"></rich:spacer>

		<a4j:form id="lista_form" rendered="true">

			<rich:panel>

				<rich:dataTable width="940px" id="tabelaPaginada"
					value="#{usuarioBean.tableModel}" rows="5" var="usuario"
					binding="#{table}"
					columnClasses="alignLeft, alignLeft, alignLeft, alignCenter, alignCenter"
					onRowMouseUp="this.style.backgroundColor='#9C9C9C'" sortMode="single">
					
					<a4j:support event="onRowClick" actionListener="#{usuarioBean.selecionarUsuario}" />

					<rich:column>
						<f:facet name="header">
							<h:outputLabel value="LOGIN" />
						</f:facet>
						<h:outputText value="#{usuario.login}" />
					</rich:column>
					<rich:column>
						<f:facet name="header">
							<h:outputLabel value="SENHA" />
						</f:facet>
						<h:outputText value="#{usuario.senha}" />
					</rich:column>

				</rich:dataTable>

				<rich:datascroller for="tabelaPaginada" maxPages="2" />

			</rich:panel>

			<rich:spacer height="10" />
			
			<rich:panel bodyClass="rich-laguna-panel-no-header">
	
				<a4j:commandButton value="Cadastrar"
					action="#{usuarioBean.incluirUsuario}" />
				<rich:spacer height="5" />
	
				<a4j:commandButton value="Editar"
					action="#{usuarioBean.editarUsuario}" />
				<rich:spacer height="5" />
	
				<a4j:commandButton value="Voltar" action="home" />
			
			</rich:panel>	

		</a4j:form>

		<rich:spacer height="40" />

	</ui:define>

</ui:composition>

Qdo. o usuario seleciona a linha e clica em editar, a lista usuarios que está com o @DataModel vem preenchido certo, mas o atributo usuarioSelecionado (que está com o @DataModelSelection) vem sempre com o primeiro registro na tabela.
Não consigo trazer todos os objetos da lista, só o primeiro.

Alguém ja teve esse problema ??? Tive esse problema depois que implementei a paginação por demanda.

Qualquer ajuda será válida.

Abraço,