Galera, a primeiro momento eu to tentando reproduzir o que esta no shwocase, mas não consigo…
Talvez eu tenha esquecido algum detalhe…
A principio esta bem simples
<h:form id="mainForm">
<p:growl autoUpdate="true" id="msgs" showDetail="true" closable="true" showSummary="false" />
<p:panel>
<h:panelGrid columns="2">
<p:outputLabel for="campos" value="#{msg['entity.campos']}"/>
<p:autoComplete id="campos" value="#{acaoController.campoSelecionado}" completeMethod="#{campoController.autoComplete}"
dropdown="true" var="p" itemLabel="#{p.rotulo}" itemValue="#{p}" converter="#{campoConverter}"/>
<p:commandButton id="btn_add" value="Add" update="camposPanel @parent"
action="#{acaoController.reinit}" immediate="true" >
<p:collector value="#{acaoController.campoSelecionado}"
addTo="#{acaoController.camposSelecionados}" />
</p:commandButton>
</h:panelGrid>
</p:panel>
<p:outputPanel id="camposPanel">
<p:dataTable value="#{acaoController.camposSelecionados}" var="entity">
<p:column headerText="#{msg['entity.id']}" style="width:80px">
<h:outputText value="#{entity.id}" />
</p:column>
<p:column headerText="#{msg['entity.nome']}" sortBy="#{entity.nome}">
<h:outputText value="#{entity.nome}" />
</p:column>
<p:column headerText="#{msg['entity.rotulo']}" sortBy="#{entity.rotulo}">
<h:outputText value="#{entity.rotulo}" />
</p:column>
<p:column headerText="#{msg['entity.tipoCampo']}" sortBy="#{entity.tipo}">
<h:outputText value="#{entity.tipo}" />
</p:column>
<p:column headerText="#{msg['entity.tamanho']}" sortBy="#{entity.tamanho}">
<h:outputText value="#{entity.tamanho}" />
</p:column>
</p:dataTable>
</p:outputPanel>
em baixo eu tenho outro panelgrid, mas nao estou usando no momento…
No acao controller eu tenho os get e sets do “campoSelecionado” e “camposSelecionados”…
Mas, pelo que vi, o campoSelecionado está null