2017-02-18 62 views
0

我在我的項目中使用了primefaces組件。Primefaces PickList Ajax傳輸事件未觸發

我的問題是關於pickList組件。

<p:pickList> 
    <p:ajax event="transfer" listener="#{rotaBean.operacao}" update="msg frequencia" process="pickList" partialSubmit="true" 
     oncomplete="if (args.validationFailed){ PF('periodoColeta').hide();} else{ PF('periodoColeta').show();}" /> 
</p:pickList> 

當我在PickList中的源列表中有很多項目時,不會調用傳輸事件ajax。

來源清單有大約2000個項目。

爲什麼發生?

請幫助我。

昨天我問了黃金社區的問題。

Primefaces Community

有人可以幫我請。

有沒有解決方案?

回答

0

我沒有測試過你的代碼,但會認爲問題在於p:pickList處理提交的所有源和所有目標,這意味着轉換器將爲所有實體運行,並且如果這意味着要爲每個實例調用數據庫實體需要很長時間。

如果你找到一種避免處理源列表的方法,你會遇到其他問題,讓dom和backing bean中的列表保持同步(至少我做過),例如,如果發生錯誤。

如果這是問題,我發現最簡單的解決方案是使用OmniFaces ListConverter。它的工作非常棒。但是,這是否會足夠快,以轉換每一個轉移的一切,我不知道。

+0

我只是處理AJAX傳輸事件。 – Miltex

+0

你有process =「pickList」,所以它會處理它 –

+0

只有源項目被提交給我的Bean。 – Miltex