public static void processExtreme( HttpServletRequest request, String searchName, Object criteriaObject) { String page = request.getParameter("page"); // String searchName = SearchUtil.getSearchName(request); Map searchInfo = SearchUtil.getSearchInfo(request); Map criterias = null; if (page == null) { String method = request.getParameter("method"); if (method != null && method.equals("delete")) { BeanUtil.copyProperties(criteriaObject, SearchUtil.getSearchModel(request)); criterias = SearchUtil.processCriterias(criteriaObject); } criterias = SearchUtil.processCriterias(criteriaObject); request.getSession().setAttribute(SearchConstant.CRITERIA_OBJECT, criteriaObject); } else { BeanUtil.copyProperties( criteriaObject, request.getSession().getAttribute(SearchConstant.CRITERIA_OBJECT)); criterias = SearchUtil.processCriterias(criteriaObject); } if (request.getAttribute(SearchConstant.COMPOSITE_ID) != null) { criterias.put(SearchConstant.ID, request.getAttribute(SearchConstant.COMPOSITE_ID)); } Search search = (Search) searchInfo.get(searchName); String fixedParams = (String) request.getAttribute(SearchConstant.FIXED_PARAMETERS); if (fixedParams != null) { search.setFixedParams(fixedParams); } Map fixedCriterias = (Map) request.getAttribute(SearchConstant.FIXED_CRITERIAS); if (fixedCriterias != null && !fixedCriterias.isEmpty()) { for (Iterator it = fixedCriterias.keySet().iterator(); it.hasNext(); ) { Object key = it.next(); criterias.put(key, fixedCriterias.get(key)); } } processExtreme(request, search, criterias); }