List of usage examples for org.springframework.beans.support PagedListHolder getPageSize
public int getPageSize()
From source file:sample.tomcat.jsp.MessageController.java
@RequestMapping(value = "/list", method = RequestMethod.GET) public ModelAndView showList(@RequestParam(required = false) Integer page, @RequestParam(required = false) Integer maxItems, @ModelAttribute("research") Research research) { ModelAndView modelAndView = new ModelAndView("list"); List<Message> messageList = messageService.findAll(); PagedListHolder<Message> pagedListHolder = new PagedListHolder<>(messageList); modelAndView.addObject("maxItems", pagedListHolder.getPageSize()); modelAndView.addObject("maxPages", pagedListHolder.getPageCount()); if (maxItems == null || maxItems < 1 || maxItems > pagedListHolder.getPageSize()) { pagedListHolder.setPageSize(DEFAULT_PAGE_SIZE); } else {/*from ww w. j a va2 s .c o m*/ pagedListHolder.setPageSize(maxItems); } if (page == null || page < 1 || page > pagedListHolder.getPageCount()) page = 1; modelAndView.addObject("page", page); if (page == null || page < 1 || page > pagedListHolder.getPageCount()) { pagedListHolder.setPage(0); modelAndView.addObject("messageList", pagedListHolder.getPageList()); } else if (page <= pagedListHolder.getPageCount()) { pagedListHolder.setPage(page - 1); modelAndView.addObject("messageList", pagedListHolder.getPageList()); } return modelAndView; }
From source file:sample.tomcat.jsp.MessageController.java
@RequestMapping(value = "/search", method = RequestMethod.GET) public ModelAndView showSearch(HttpServletRequest request, @RequestParam(value = "name", required = true) String name, @RequestParam(required = false) Integer page, @RequestParam(required = false) Integer maxItems, @ModelAttribute("research") Research research) { ModelAndView modelAndView = new ModelAndView("search"); name = request.getParameter("name"); List<Message> messageSearch = messageService.findByFirstNameContainsOrLastNameContainsAllIgnoreCase(name, name);//from ww w.j a v a2 s . c o m PagedListHolder<Message> pagedListHolder = new PagedListHolder<>(messageSearch); // pagedListHolder.setPageSize(maxItems); modelAndView.addObject("maxItems", pagedListHolder.getPageSize()); modelAndView.addObject("maxPages", pagedListHolder.getPageCount()); if (maxItems == null || maxItems < 1 || maxItems > pagedListHolder.getPageSize()) { pagedListHolder.setPageSize(DEFAULT_PAGE_SIZE); } else { pagedListHolder.setPageSize(maxItems); } if (page == null || page < 1 || page > pagedListHolder.getPageCount()) page = 1; modelAndView.addObject("page", page); if (page == null || page < 1 || page > pagedListHolder.getPageCount()) { pagedListHolder.setPage(0); modelAndView.addObject("messageSearch", pagedListHolder.getPageList()); } else if (page <= pagedListHolder.getPageCount()) { pagedListHolder.setPage(page - 1); modelAndView.addObject("messageSearch", pagedListHolder.getPageList()); } return modelAndView; }
From source file:org.hoteia.qalingo.web.mvc.controller.search.CatalogSearchController.java
@RequestMapping(value = FoUrls.CATALOG_SEARCH_URL, method = RequestMethod.GET) public ModelAndView search(final HttpServletRequest request, final Model model, @Valid SearchForm searchForm) throws Exception { ModelAndViewThemeDevice modelAndView = new ModelAndViewThemeDevice(getCurrentVelocityPath(request), FoUrls.CATALOG_SEARCH.getVelocityPage()); final RequestData requestData = requestUtil.getRequestData(request); final MarketArea marketArea = requestData.getMarketArea(); // SANITY CHECK List<String> evictValues = new ArrayList<String>(); evictValues.add("*"); if (StringUtils.isNotEmpty(searchForm.getText()) && evictValues.contains(searchForm.getText())) { return displaySearch(request, model); }//from w ww . ja va 2s.c o m if (StringUtils.isEmpty(searchForm.getText()) && searchForm.getPage() == 0) { return displaySearch(request, model); } String sessionKeyPagedListHolder = "Search_ProductMarketing_PagedListHolder_" + request.getSession().getId(); String sessionKeyFacet = "Search_ProductMarketing_Facet_" + request.getSession().getId(); int page = 0; try { page = Integer.parseInt(request.getParameter("page")); } catch (Exception e) { // NO NEED } String mode = request.getParameter(Constants.PAGE_VIEW_MODE); String sortBy = searchForm.getSortBy(); String order = searchForm.getOrder(); int pageSize = searchForm.getPageSize(); final List<String> facetFields = new ArrayList<String>(); facetFields.add(ProductMarketingResponseBean.PRODUCT_MARKETING_SEARCH_FIELD_CATEGORIE_CODES); facetFields.add(ProductMarketingResponseBean.PRODUCT_MARKETING_SEARCH_FIELD_PRODUCT_BRAND_CODE); facetFields.add(ProductMarketingResponseBean.PRODUCT_MARKETING_SEARCH_FIELD_OPTION_DEFINITION_CODES); facetFields.add(ProductMarketingResponseBean.PRODUCT_MARKETING_SEARCH_FIELD_TAG_CODES); try { PagedListHolder<ProductMarketingViewBean> pagedListHolder; if (page == 0 || request.getSession().getAttribute(sessionKeyPagedListHolder) == null) { ProductMarketingResponseBean productMarketingResponseBean = null; String querySearch = getSearchQuery(marketArea, searchForm.getText()); if (searchForm.getPrice() != null) { // if(searchForm.getCatalogCategoryList() != null){ // productMarketingResponseBean = productMarketingSolrService.searchProductMarketing(querySearch, facetFields, searchForm.getPrice().getStartValue(), searchForm.getPrice().getEndValue(), // searchForm.getCatalogCategoryList()); // } else { // productMarketingResponseBean = productMarketingSolrService.searchProductMarketing(querySearch, facetFields, searchForm.getPrice().getStartValue(), searchForm.getPrice().getEndValue()); // } productMarketingResponseBean = productMarketingSolrService.searchProductMarketing(querySearch, facetFields, null); } else { productMarketingResponseBean = productMarketingSolrService.searchProductMarketing(querySearch, facetFields, null); } pagedListHolder = initList(requestData, sessionKeyPagedListHolder, productMarketingResponseBean, pageSize, sortBy, order); // FACETS List<SearchFacetViewBean> facets = frontofficeViewBeanFactory .buildListViewBeanCatalogSearchFacet(requestData, productMarketingResponseBean); modelAndView.addObject(AbstractSolrService.SEARCH_FACET_FIELD_LIST, facets); request.getSession().setAttribute(sessionKeyFacet, facets); } else { pagedListHolder = (PagedListHolder<ProductMarketingViewBean>) request.getSession() .getAttribute(sessionKeyPagedListHolder); // FACETS List<SearchFacetViewBean> facets = (List<SearchFacetViewBean>) request.getSession() .getAttribute(sessionKeyFacet); modelAndView.addObject(AbstractSolrService.SEARCH_FACET_FIELD_LIST, facets); } int pageListPosition = page - 1; int pageCurrent = pagedListHolder.getPage(); if (pageCurrent < pageListPosition) { for (int i = pageCurrent; i < pageListPosition; i++) { pagedListHolder.nextPage(); } } else if (pageCurrent > pageListPosition) { for (int i = pageListPosition; i < pageCurrent; i++) { pagedListHolder.previousPage(); } } modelAndView.addObject(Constants.PAGINATION_PAGE_URL, requestUtil.getCurrentRequestUrl(request)); modelAndView.addObject(Constants.PAGINATION_PAGE_PAGED_LIST_HOLDER, pagedListHolder); modelAndView.addObject(Constants.SEARCH_TEXT, searchForm.getText()); modelAndView.addObject(Constants.PAGINATION_PAGE_SIZE, pagedListHolder.getPageSize()); modelAndView.addObject(Constants.PAGINATION_SORT_BY, sortBy); modelAndView.addObject(Constants.PAGINATION_ORDER, order); modelAndView.addObject(Constants.PRICE_RANGE_PARAMETER, searchForm.getPrice()); // modelAndView.addObject(Constants.CATALOG_CATEGORIES_PARAMETER, searchForm.getCategoriesFilter()); } catch (Exception e) { logger.error("SOLR Error", e); return displaySearch(request, model); } loadRecentProducts(requestData, model); final Cart currentCart = requestData.getCart(); final CartViewBean cartViewBean = frontofficeViewBeanFactory .buildViewBeanCart(requestUtil.getRequestData(request), currentCart); modelAndView.addObject(ModelConstants.CART_VIEW_BEAN, cartViewBean); overrideDefaultPageTitle(request, modelAndView, FoUrls.CATALOG_SEARCH.getKey()); model.addAttribute(ModelConstants.BREADCRUMB_VIEW_BEAN, buildBreadcrumbViewBean(requestData)); return modelAndView; }
From source file:org.hoteia.qalingo.web.mvc.controller.search.StoreSearchController.java
@RequestMapping(value = FoUrls.STORE_SEARCH_URL, method = RequestMethod.GET) public ModelAndView search(final HttpServletRequest request, final Model model, @Valid SearchForm searchForm) throws Exception { ModelAndViewThemeDevice modelAndView = (ModelAndViewThemeDevice) displaySearch(request, model); final RequestData requestData = requestUtil.getRequestData(request); // SANITY CHECK : evict values List<String> evictValues = new ArrayList<String>(); evictValues.add("*"); if (StringUtils.isNotEmpty(searchForm.getText()) && evictValues.contains(searchForm.getText())) { return modelAndView; }// ww w. j a v a 2 s. c om // SANITY CHECK : if empty search : use geolocated city as default value if (StringUtils.isEmpty(searchForm.getText()) && searchForm.getPage() == 0 && requestData.getGeolocData() != null && requestData.getGeolocData().getCity() != null) { searchForm.setText(requestData.getGeolocData().getCity().getName()); } // SANITY CHECK : empty search if (StringUtils.isEmpty(searchForm.getText()) && searchForm.getPage() == 0) { return modelAndView; } String url = requestUtil.getCurrentRequestUrl(request); String sessionKeyPagedListHolder = "Search_Store_PagedListHolder_" + request.getSession().getId(); String sessionKeyFacet = "Search_Store_Facet_" + request.getSession().getId(); int page = 0; try { page = Integer.parseInt(request.getParameter("page")); } catch (Exception e) { // NO NEED } String mode = request.getParameter(Constants.PAGE_VIEW_MODE); String cities = request.getParameter("cities"); String countries = request.getParameter("countries"); List<String> cityList = new ArrayList<String>(); if (StringUtils.isEmpty(cities)) { cityList = null; } else { String[] arr = cities.split(","); cityList = Arrays.asList(arr); } List<String> countryList = new ArrayList<String>(); if (StringUtils.isEmpty(countries)) { countryList = null; } else { String[] arr = countries.split(","); countryList = Arrays.asList(arr); } int pageSize = searchForm.getPageSize(); if (pageSize == 0) { pageSize = 16; } String sortBy = searchForm.getSortBy(); String order = searchForm.getOrder(); try { PagedListHolder<StoreViewBean> pagedListHolder; if (page == 0 || request.getSession().getAttribute(sessionKeyPagedListHolder) == null) { StoreResponseBean storeResponseBean = null; List<String> facetFields = new ArrayList<String>(); facetFields.add(StoreResponseBean.STORE_CITY_FACET_FIELD); facetFields.add(StoreResponseBean.STORE_COUNTRY_FACET_FIELD); String query = getSearchQuery(searchForm.getText()); SolrParam solrParam = new SolrParam(); solrParam.put("rows", "150"); storeResponseBean = storeSolrService.searchStore(query, facetFields, cityList, countryList, solrParam); // StoreResponseBean storeResponBeanNonFilter = storeSolrService.searchStore(, , facetFields); pagedListHolder = initList(requestData, sessionKeyPagedListHolder, storeResponseBean, pageSize, sortBy, order); // FACETS // List<SearchFacetViewBean> facets = frontofficeViewBeanFactory.buildListViewBeanStoreSearchFacet(requestData, storeResponBeanNonFilter); List<SearchFacetViewBean> facets = frontofficeViewBeanFactory .buildListViewBeanStoreSearchFacet(requestData, storeResponseBean); modelAndView.addObject(AbstractSolrService.SEARCH_FACET_FIELD_LIST, facets); request.getSession().setAttribute(sessionKeyFacet, facets); } else { pagedListHolder = (PagedListHolder<StoreViewBean>) request.getSession() .getAttribute(sessionKeyPagedListHolder); // FACETS List<SearchFacetViewBean> facets = (List<SearchFacetViewBean>) request.getSession() .getAttribute(sessionKeyFacet); modelAndView.addObject(AbstractSolrService.SEARCH_FACET_FIELD_LIST, facets); } int pageListPosition = page - 1; int pageCurrent = pagedListHolder.getPage(); if (pageCurrent < pageListPosition) { for (int i = pageCurrent; i < pageListPosition; i++) { pagedListHolder.nextPage(); } } else if (pageCurrent > pageListPosition) { for (int i = pageListPosition; i < pageCurrent; i++) { pagedListHolder.previousPage(); } } modelAndView.addObject(Constants.PAGINATION_PAGE_URL, url); modelAndView.addObject(Constants.PAGINATION_PAGE_PAGED_LIST_HOLDER, pagedListHolder); modelAndView.addObject(Constants.SEARCH_TEXT, searchForm.getText()); modelAndView.addObject(Constants.PAGINATION_PAGE_SIZE, pagedListHolder.getPageSize()); modelAndView.addObject(Constants.PAGINATION_SORT_BY, sortBy); modelAndView.addObject(Constants.PAGINATION_ORDER, order); modelAndView.addObject(Constants.STORE_CITY_PARAMETER, cities); modelAndView.addObject(Constants.STORE_COUNTRY_PARAMETER, countries); } catch (Exception e) { logger.error("SOLR Error", e); return modelAndView; } modelAndView.addObject("storeSearchUrl", urlService.generateUrl(FoUrls.STORE_SEARCH, requestData)); return modelAndView; }