Atualização de tela - Ajuda

Tenho uma aplicaçao que estou fazendo, onde tenho duas situaçoes, uma teste e outra real
A Real é a seguinte.

<h:form>
<p:messages/>
  <f:event type="javax.faces.event.PostAddToViewEvent"
				listener="#{telaAvaliacoes.processEvent}" />
 
<p:dialog header="Pesquisa" widgetVar="dlg2" modal="true" height="650" width="600">
        <h:outputLabel for="term" value="Código/Nome:" />
        <h:inputText id="term" value="#{transacaoPesquisa.pesquisar}" />
        <p:commandButton value="Buscar" action="#{transacaoPesquisa.botaoAtualiza}" update="tabela" />

        <p:dataTable var="for" value="#{transacaoPesquisa.result}" id="tabela">
        <f:facet name="header">
            Pesquisa Fornecedor
        </f:facet>

        <p:column>
            <f:facet name="header">
                <h:outputText value="Código"/>
            </f:facet>
            <h:outputText value="#{for.codigo}"/>
        </p:column>

        <p:column>
            <f:facet name="header" >
                <h:outputText value="Nome"/>
            </f:facet>
            <h:outputText value="#{for.nome}" />
        </p:column>
        
        <p:column>
            <f:facet name="header">
                <h:outputText value="Selecionar" />
            </f:facet>
          <h:commandLink value="Selecionar" action="#{camposAvaliacoes.setFornecedor(for.codigo)}" />
           
        </p:column>
    </p:dataTable>
</p:dialog>
</h:form>

Onde eu passo pro listner a chamada da minha tela (criaçao dinamica, com os botoes e inputs)

situaçao de teste:

<h:form>
<p:messages/>
   <h:panelGrid columns="3">  
	   <h:outputLabel for="lfof" value="Fornecedor:" />
       <h:inputText id="forne" value="#{camposAvaliacoes.fornecedor}" />
       <p:commandButton value="Modal" onclick="dlg2.show();" type="button"/>
       
    </h:panelGrid>
<p:dialog header="Pesquisa" widgetVar="dlg2" modal="true" height="650" width="600">
        <h:outputLabel for="term" value="Código/Nome:" />
        <h:inputText id="term" value="#{transacaoPesquisa.pesquisar}" />
        <p:commandButton value="Buscar" action="#{transacaoPesquisa.botaoAtualiza}" update="tabela" />

        <p:dataTable var="for" value="#{transacaoPesquisa.result}" id="tabela">
        <f:facet name="header">
            Pesquisa Fornecedor
        </f:facet>

        <p:column>
            <f:facet name="header">
                <h:outputText value="Código"/>
            </f:facet>
            <h:outputText value="#{for.codigo}"/>
        </p:column>

        <p:column>
            <f:facet name="header" >
                <h:outputText value="Nome"/>
            </f:facet>
            <h:outputText value="#{for.nome}" />
        </p:column>
        
        <p:column>
            <f:facet name="header">
                <h:outputText value="Selecionar" />
            </f:facet>
          <h:commandLink value="Selecionar" action="#{camposAvaliacoes.setFornecedor(for.codigo)}" />
           
        </p:column>
    </p:dataTable>
</p:dialog>
</h:form>

Onde eu crio uma tela com um campo inputText para receber o resultado da pesquisa. A diferença é que no meu teste funciona legal, quando eu chamo minha tela de pesquisa e clico na coluna da table “Selecionar”, alimenta o meu setter e getter do campo da tela principal.
Mas se eu fizer o mesmo processo na tela com criaçao dinamica, nao alimenta o meu setter e getter, e o maior detalhe, se debugar na minha classe que tem os metodos “camposAvaliacoes.setFornecedor(for.codigo)” passa o “for.codigo” perfeito, ou seja, recebe o valor, mas nao mostra em tela.

Alguma sugestao do que possa ser feito?