FileDocCategorySizeDatePackage
ViewCategoryAction.javaAPI DocExample1799Thu Dec 04 08:19:26 GMT 2003org.springframework.samples.jpetstore.web.struts

ViewCategoryAction.java

package org.springframework.samples.jpetstore.web.struts;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

import org.springframework.samples.jpetstore.domain.Category;
import org.springframework.util.PagedListHolder;

public class ViewCategoryAction extends BaseAction {

  public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
    String categoryId = request.getParameter("categoryId");
    if (categoryId != null) {
      PagedListHolder productList = new PagedListHolder(getPetStore().getProductListByCategory(categoryId));
			productList.setPageSize(4);
			Category category = getPetStore().getCategory(categoryId);
			request.getSession().setAttribute("ViewProductAction_productList", productList);
			request.getSession().setAttribute("ViewProductAction_category", category);
			request.setAttribute("productList", productList);
      request.setAttribute("category", category);
    }
		else {
			PagedListHolder productList = (PagedListHolder) request.getSession().getAttribute("ViewProductAction_productList");
			Category category = (Category) request.getSession().getAttribute("ViewProductAction_category");
      String page = request.getParameter("page");
      if ("next".equals(page)) {
        productList.nextPage();
      } else if ("previous".equals(page)) {
        productList.previousPage();
      }
			request.setAttribute("productList", productList);
      request.setAttribute("category", category);
    }
    return mapping.findForward("success");
  }

}