2015-09-16 5 views
5

Я бы хотел загрузить список <f:selectItems>, только когда пользователь откроет <p:selectOneMenu>.Lazy loading f: selectItems при открытии p: selectOneMenu

Я попробовал этот путь, но не работает:

<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}" /> 

Как я могу добиться этого?

+0

можете ли вы определить 'не работает' - любые ошибки, непредвиденное поведение? – dognose

+0

Почему бы просто не использовать автозаполнение p: с раскрывающимся списком (http://www.primefaces.org/showcase/ui/input/autoComplete.xhtml)? Я думаю, что это выполнит ленивую нагрузку. – Fritz

+0

Я думал использовать p: автозаполнение, если я не могу сделать ленивый p: selectOneMenu –

ответ