Estou com o seguinte problema, tenho um pickList que a lista é bem grande, em cima do componente do pickList fiz uma busca em auto complete. E eu quero que quando selecionar o campo de cima ele insira na lista do lado direito do pickList e remova da lista do lado esquerdo. O problema é que esta removendo da lista do lado esquerdo mas não está renderizando no lado direito. Mas o objeto está sendo adicionado na lista, criei uma tabela para testar e atualizei ela junto com o pickList e o elemento aparece na tabela e não no pickList. To achando que o problema é na renderização do componente.
Aqui é a pagina
<rich:suggestionbox id="agenciaInput" height="200" width="280" suggestionAction="#{superintendenciaBean.autoCompleteAgencia}"
var="agencia" for="agenciasInput" fetchValue="#{agencia.nome}" tokens="," >
<h:column>
<h:outputText value="#{agencia.numero}" />
</h:column>
<h:column>
<h:outputText value="#{agencia.nome}" />
</h:column>
<a4j:support status="loading" ajaxSingle="true" event="onselect" action="#{superintendenciaBean.addAgencia(agencia)}" reRender="pickListAgencia,tableTeste"/>
</rich:suggestionbox>
<rich:pickList id="pickListAgencia" converter="converters.SimpleEntityConverter" sourceListWidth="260px" targetListWidth="260px"
listsHeight="200px" value="#{superintendenciaBean.superintendencia.agencias}" copyControlLabel="#{msg['commons.adicionar']}" removeControlLabel="#{msg['commons.remover']}">
<c:forEach items="#{superintendenciaBean.listAgencias}" var="agencia">
<f:selectItem itemValue="#{agencia}" itemLabel="[#{agencia.numero}] #{agencia.nome}"/>
</c:forEach>
</rich:pickList>
Aqui está meu ManagedBean, o objeto está chegando corretamente e sendo adicionado na lista. Mas na hora do reRender não aparece na lista do lado direito.
public void addAgencia(Agencia agencia){
superintendencia.getAgencias().add(agencia);
listAgencias.remove(agencia);
}
Já tentei tirar o ajaxSingle e colocar dentro de uma região mas também não deu certo.
Alguém tem alguma ideia?