Pessoal,
Boa tarde !!!
Será que algué pode me ajudar ???!!
Bom, vamos lá…
Tenho um dataTable, do rich, que me traz uma lista de List products…
Como chamei esta lista de product, em uma coluna minha teria de ficar asim (coluna com checkBox par edição) :
<rich:column id=“edit” styleClass=“alignTableCenter” >
<h:selectBooleanCheckbox id=“check” value="#{manualBean.selectedIds[product.id]}" />
</rich:column>
Queria que meu selectedIds busca-se os id’s dos mus produtos que estão nesta coluna :
<rich:column id=“manualFilterID” title="#{manualFilter.id}" styleClass=“alignTableCenter” >
<f:facet name=“header”>
<h:outputText value="#{manualFilter.id}" id=“id” />
</f:facet>
<h:outputText value="#{product.id}" />
</rich:column>
No meu bean tenho um método que é acionado em um botão de edição do meu xhtml :
<h:commandButton title="#{tpl.changeStatus}" id=“statusProduct” type=“button” value=“Alterar Status” action="#{manualBean.changeStatus}" />
No meu Bean chamei o selectedIds :
private Map<Long, Boolean> selectedIds = new HashMap<Long, Boolean>();
public Map<Long, Boolean> getSelectedIds() {
return selectedIds;
}
public void setSelectedIds(Map<Long, Boolean> selectedIds) {
this.selectedIds = selectedIds;
}
Método :
public String changeStatus() {
Set keySet = selectedIds.keySet();
List ids = new ArrayList();
for (Long long1 : keySet) {
if (selectedIds.get(long1).booleanValue())
ids.add(long1);
}
if (ids == null || products == null || ids.size() <= 0
|| products.size() <= 0)
return Navigation.SAME;
else
for (Long id : ids) {
AnnounceKeyword ank = announceKeywordListDAO.get(
AnnounceKeyword.class, id);
if (ank.getStatus() == AnnounceKeywordStatus.Normal
|| ank.getStatus() == AnnounceKeywordStatus.Active) {
ank.setStatus(AnnounceKeywordStatus.OnHold);
} else {
if (ank.getStatus() == AnnounceKeywordStatus.OnHold
|| ank.getStatus() == AnnounceKeywordStatus.Paused) {
ank.setStatus(AnnounceKeywordStatus.Normal);
}
}
announceKeywordListDAO.update(ank);
}
return Navigation.SAME;
}
Finalmente, o problema é que não consigo retornar nem os Longs e nem o Bolleans do meu selectedIds.
O que será que está ocorrendo…
Obs : Esta controller está em REQUEST !!!
Fico no aguardo de uma ajuda…
Não sei onde este erro persiste.
Valeu…
Abs,