KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > springframework > samples > jpetstore > web > struts > SearchProductsAction


1 package org.springframework.samples.jpetstore.web.struts;
2
3 import javax.servlet.http.HttpServletRequest JavaDoc;
4 import javax.servlet.http.HttpServletResponse JavaDoc;
5
6 import org.apache.struts.action.ActionForm;
7 import org.apache.struts.action.ActionForward;
8 import org.apache.struts.action.ActionMapping;
9
10 import org.springframework.beans.support.PagedListHolder;
11
12 public class SearchProductsAction extends BaseAction {
13
14   public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest JavaDoc request, HttpServletResponse JavaDoc response) throws Exception JavaDoc {
15         if (request.getParameter("search") != null) {
16             String JavaDoc keyword = request.getParameter("keyword");
17             if (keyword == null || keyword.length() == 0) {
18                 request.setAttribute("message", "Please enter a keyword to search for, then press the search button.");
19                 return mapping.findForward("failure");
20             }
21             else {
22                 PagedListHolder productList = new PagedListHolder(getPetStore().searchProductList(keyword.toLowerCase()));
23                 productList.setPageSize(4);
24                 request.getSession().setAttribute("SearchProductsAction_productList", productList);
25                 request.setAttribute("productList", productList);
26                 return mapping.findForward("success");
27             }
28         }
29         else {
30       String JavaDoc page = request.getParameter("page");
31       PagedListHolder productList = (PagedListHolder) request.getSession().getAttribute("SearchProductsAction_productList");
32             if ("next".equals(page)) {
33                 productList.nextPage();
34             }
35             else if ("previous".equals(page)) {
36                 productList.previousPage();
37             }
38             request.setAttribute("productList", productList);
39             return mapping.findForward("success");
40     }
41   }
42
43 }
44
Popular Tags