private boolean performQuery(QueryForm queryForm, HttpServletRequest request) throws Exception { HttpSession session = request.getSession(); // try // { Query query = new QueryImpl(); try { query.setCriteria(getSearchCriteria(queryForm, request)); } catch (QuerySpecificationException e1) { e1.printStackTrace(); throw e1; } catch (SearchCriteriaSpecificationException e1) { e1.printStackTrace(); throw e1; } catch (Exception e1) { e1.printStackTrace(); throw e1; } int totalResultSize = 0; try { totalResultSize = query.totalResultSize(); } catch (QuerySpecificationException e) { e.printStackTrace(); throw e; } if (totalResultSize > 0) { // Query results Collection resultCollection = null; try { resultCollection = query.query(1, new Integer(queryForm.getRecordCount()).intValue()); } catch (NumberFormatException e) { e.printStackTrace(); } catch (QuerySpecificationException e) { e.printStackTrace(); } List resultList = (List) resultCollection; // Set Search Result Page information SearchResultPage searchResultPage = new SearchResultPage(); searchResultPage.setTotalResultSize(totalResultSize); searchResultPage.setPageSize(new Integer(queryForm.getRecordCount()).intValue()); searchResultPage.setCurrentPageNumber(1); searchResultPage.setSearchResultMessage(Constants.RESULTS_MESSAGE); searchResultPage.setSearchResultObjects(resultList); searchResultPage.getLastPageNumber(); // Set Search Results session.setAttribute(Constants.SEARCH_RESULTS_PAGE, searchResultPage); session.setAttribute( Constants.VIEW_PAGE_NUMBER, new Integer(searchResultPage.getCurrentPageNumber())); return true; } else { // Set Search Result Page information SearchResultPage searchResultPage = new SearchResultPage(); searchResultPage.setTotalResultSize(totalResultSize); searchResultPage.setSearchResultMessage(Constants.NO_RESULTS_MESSAGE); // Set Search Results session.setAttribute(Constants.SEARCH_RESULTS_PAGE, searchResultPage); return false; } }