У меня есть следующая структура:
<div id='Content' align='center'>
<h:form class="form_wrapper">
<div id="innerContent">
<div jsfc="ui:repeat" value="#{HotelList.hotel_summary}" var="hotel" styleClass="dataTable" class="hotelWrapper">
<ui:repeat value="" var="">
....................................
</ui:repeat>
</div>
</div>
</h:form>
</div>
Внутренняя часть innerContent
заполняется информацией из ответа XML. Вот как я получаю ответ для #{HotelList.hotel_summary}
:
HotelListRequest hotel_list = new HotelListRequest();
HotelListResponse response = service.getList(hotel_list);
com.ean.wsapi.hotel.v3.HotelList hl = response.getHotelList();
hotel_summary = hl.getHotelSummary();
cacheKey = response.getCacheKey();
cacheLocation = response.getCacheLocation();
Я реализовал разбивку на страницы, вот код для этого:
public String nextPage(){
HotelListRequest hotel_list = new HotelListRequest();
hotel_list.setCacheKey(cacheKey);
hotel_list.setCacheLocation(cacheLocation);
HotelListResponse response = service.getList(hotel_list);
com.ean.wsapi.hotel.v3.HotelList hl = response.getHotelList();
hotel_summary = hl.getHotelSummary();
cacheKey = response.getCacheKey();
cacheLocation = response.getCacheLocation();
return "hotelResults?faces-redirect=true";
}
Это почти то же самое, что и два, с той лишь разницей, что последний устанавливает cacheKey и cacheLocation, чтобы получить следующий набор данных.
hotelResults.xhtml — это имя страницы, на которой отображаются данные.
Я пытался использовать Infinite Scroll From Paul Irish и Luke Shumard, но он работает только с <a href>
, а с <a href>
я не могу использовать action="#{HotelList.nextPage()}"
Я также попробовал бесконечную прокрутку с http://kahimyang.info, но безуспешно.
Я ищу некоторое представление о том, что мне нужно изменить, чтобы это произошло. Я предполагаю, что пагинация, которую я сделал, пригодится.
Я также хотел бы добавить, что я новичок в JSF, поэтому прошу прощения, если это глупый вопрос, я просто застрял.
<h:commandButton action="#{HotelList.nextPage()}" value="More" class="showMore" id='showMore'> <f:ajax render="@form" /> </h:commandButton>
- person Timu   schedule 21.04.2013HotelList.nextPage()
в<ui:repeat value="" var=""></ui:repeat>
, не заменяя старый, просто добавляя его внизу того, который был создан. - person Timu   schedule 21.04.2013<o:componentIdParam>
, опубликованный в моем ответе. Сначала проверьте пример, который показывает это поведение (хотя и с использованием ответа JSON, но он будет аналогичен с использованием XML). - person Luiggi Mendoza   schedule 21.04.2013