2015-09-16 39 views
5

Vorrei caricare l'elenco di <f:selectItems> solo quando l'utente apre <p:selectOneMenu>.Caricamento lento f: selectItems all'apertura p: selectOneMenu

ho provato questo modo, ma non funziona:

<p:selectOneMenu id="bases" value="#{sucesoBB.suceso.base}" converter="EntitiesCachedConverter" > 
    <f:selectItem itemLabel="" itemValue="" /> 
    <f:selectItems value="#{sucesoBB.bases}" var="base" itemValue="#{base}" itemLabel="#{base.id} - #{base.descripcion}" /> 
    <p:ajax event="click" onstart="#{sucesoBB.bases == null or sucesoBB.bases.size() ==1 or sucesoBB.bases.empty()?'cargaBases();':''}" /> 
</p:selectOneMenu> 
<p:remoteCommand name="cargaBases" update="bases" actionListener="#{sucesoBB.cargaBases}" /> 

Come posso raggiungere questo obiettivo?

+0

puoi definire 'non funziona? - eventuali errori, comportamenti imprevisti? – dognose

+0

perché non usare semplicemente p: completamento automatico con una funzione a discesa (http://www.primefaces.org/showcase/ui/input/autoComplete.xhtml)? Penso che raggiungerebbe il bisogno di carico pigro. – Fritz

+0

Ho pensato di usare p: completamento automatico se non riesco a fare lazy p: selectOneMenu –

risposta