0

当我使用附加到 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>
4

1 回答 1

0

奇怪。新发现...问题是 gruposDeTributosQuery.resultListOrdered!

 public List<Tributo> getResultListOrdered() {
    this.setOrder("nome");
    //ArrayList<Tributo> lista = new ArrayList<Tributo>(
    //      this.getResultList());
    return this.getResultList();
  }

如果我使用直接结果列表,这种行为就不会发生!

于 2014-02-07T18:45:07.803 回答