Problema <rich:dataTable> + <rich:popupPanel>

Neste outro trecho (mesma tabela), ao clicar no botão para alterar, é solicitado a abertura de uma rich:popupPanel. Porém o objeto selecionado não é exibido no popup. Alguém pode me ajudar, ou alguma idéia de como realizar?

visualizarcargos.xhtml

<rich:column styleClass="coluna">
                                <a4j:commandLink id="btnAlterar" action="#{cargoBean.preparaAlterarCargo()}">
                                    <h:graphicImage value="/images/edit.gif" title="Alterar"/>
                                    <rich:componentControl event="click" target="alteracargo" operation="show"/>
                                    <a4j:ajax event="click" render=":frmCargos:tabela :msg"/>
                                    <a4j:param value="#{cargoBean.cargoTmp.descricao}" assignTo="#{cargoBean.cargoTmp}"/>
                                </a4j:commandLink>
                                <a4j:commandLink id="btnExcluir" action="#{cargoBean.excluir()}" onclick="return excluir();">
                                    <h:graphicImage value="/images/delete.gif" title="Excluir"/>
                                    <a4j:ajax event="click" render=":frmCargos:tabela :msg"/>
                                    <rich:componentControl event="click" operation="show" target="informacao"/>
                                </a4j:commandLink>
                            </rich:column>

PopupPanel

<rich:popupPanel height="75" id="alteracargo" modal="true" resizeable="true" onmaskclick="#{rich:component('alteracargo')}.hide()">
                <f:facet name="header">
                    <h:outputText value="Insira a nova descrição" />
                </f:facet>
                <f:facet name="controls">
                    <h:outputLink value="#" onclick="#{rich:component('alteracargo')}.hide(); return false;">
                        Fechar
                    </h:outputLink>
                </f:facet>
                <h:form>
                    <h:panelGrid columns="3">
                        <h:outputLabel value="Descrição:"/>
                        <h:inputText id="lblDescricao" value="#{cargoBean.cargoTmp.descricao}" required="true" requiredMessage="Informe a descrição."/>
                        <h:commandButton value="Salvar"/>                        
                    </h:panelGrid>
                </h:form>
            </rich:popupPanel>

Bean

public Cargo preparaAlterarCargo() {
        cargoTmp = (Cargo) dtModelallCargos.getRowData();
        return cargoTmp;
    }