当我使用附加到a4j支持onlistchange事件的丰富选项列表组件时,会发生一种奇怪的行为。
如果我在选项列表组件中选择了“n”项,服务器将尝试“n”次填充它(运行gruposDeTributosQuery.resultListOrdered()“n”次!!!)! 这会导致硬延迟,因为用于填充的查询有点慢... 以上是我的代码:
<rich:pickList id="picklisttributos" value="#{criarEstudo.tributosDoAssuntoList}"
label="Tributos" >
<s:selectItems var="_tributos" value="#{gruposDeTributosQuery.resultListOrdered}"
label="#{_tributos.nome} | #{_tributos.id}" />
<s:convertEntity />
<a4j:support event="onlistchange" process="picklistOF" reRender="picklistOF" />
</rich:pickList>
答案 0 :(得分:0)
怪异。 新发现...... 问题是gruposDeTributosQuery.resultListOrdered!
public List<Tributo> getResultListOrdered() {
this.setOrder("nome");
//ArrayList<Tributo> lista = new ArrayList<Tributo>(
// this.getResultList());
return this.getResultList();
}
如果我使用direclty resultList,这个行为就不会发生!