⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 catalogaction.java

📁 版本信息:Jaoso新闻文章发布系统 0.9.1beta1 原POPTEN新闻发布系统现更名为Jaoso,不兼容popten,目前不提供popten升级Jaoso的程序.
💻 JAVA
字号:
package jaoso.news.web.action;

import jaoso.framework.util.MyUtils;

import jaoso.framework.web.action.BaseAction;

import jaoso.news.domain.Article;
import jaoso.news.domain.Catalog;

import jaoso.news.exception.CatalogExistException;

import jaoso.news.service.ArticleService;
import jaoso.news.service.CatalogService;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

import org.apache.struts.action.ActionError;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.validator.DynaValidatorForm;

import java.io.IOException;

import java.util.Collection;
import java.util.Map;

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


/**
 * @author ?吘夘櫩?
 *
 */
public class CatalogAction extends BaseAction {

    //~ Static fields/initializers =============================================

    /**  DOCUMENT ME! */
    private static Log log = LogFactory.getLog(CatalogAction.class);

    //~ Instance fields ========================================================

    /**  article manager service */
    private ArticleService articleService = (ArticleService) getServiceLocator()
                                                                 .getService("articleService");

    /**  catalog manager service */
    private CatalogService catalogService = (CatalogService) getServiceLocator()
                                                                 .getService("catalogService");

    //~ Methods ================================================================

    /**
     * get navigation
     *
     * @param actionMapping DOCUMENT ME!
     * @param actionForm DOCUMENT ME!
     * @param request DOCUMENT ME!
     * @param response DOCUMENT ME!
     *
     * @return DOCUMENT ME!
     *
     * @throws IOException DOCUMENT ME!
     * @throws ServletException DOCUMENT ME!
     */
    public final ActionForward getNavigation(
        final ActionMapping actionMapping,
        final ActionForm actionForm,
        final HttpServletRequest request,
        final HttpServletResponse response)
        throws IOException, ServletException {

        Catalog[] catalogs = catalogService.findCatalogByParent(null);

        // Remove the obsolete form bean
        removeAttribute(actionMapping, request);
        request.setAttribute("catalogs", catalogs);

        return (actionMapping.findForward("success"));
    }

    /**
     * create new catalog
     *
     * @param actionMapping DOCUMENT ME!
     * @param actionForm DOCUMENT ME!
     * @param request DOCUMENT ME!
     * @param response DOCUMENT ME!
     *
     * @return DOCUMENT ME!
     *
     * @throws IOException DOCUMENT ME!
     * @throws ServletException DOCUMENT ME!
     */
    public final ActionForward createCatalog(
        final ActionMapping actionMapping,
        final ActionForm actionForm,
        final HttpServletRequest request,
        final HttpServletResponse response)
        throws IOException, ServletException {

        ActionErrors errors = new ActionErrors();
        DynaValidatorForm form = (DynaValidatorForm) actionForm;

        // Was this transaction cancelled?
        if (isCancelled(request)) {

            removeAttribute(actionMapping, request);

            return (actionMapping.findForward("cancel"));
        }

        //chack token
        if (!isTokenValid(request)) {

            errors.add(ActionErrors.GLOBAL_ERROR,
                new ActionError("errors.TokenError"));
            resetToken(request);
            saveErrors(request, errors);

            return (actionMapping.getInputForward());
        }

        Catalog catalog = (Catalog) form.get("catalog");
        catalog.setCatalogId(null);

        try {

            catalogService.createCatalog(catalog, (String) form.get("parentId"));
        } catch (CatalogExistException e) {

            errors.add(ActionErrors.GLOBAL_ERROR,
                new ActionError("errors.CatalogExist"));
        }

        if (!errors.isEmpty()) {

            saveErrors(request, errors);
            saveToken(request);

            return (actionMapping.getInputForward());
        } else {

            // Remove the obsolete form bean
            removeAttribute(actionMapping, request);

            return (actionMapping.findForward("success"));
        }
    }

    /**
     * get index menu
     *
     * @param actionMapping DOCUMENT ME!
     * @param actionForm DOCUMENT ME!
     * @param request DOCUMENT ME!
     * @param response DOCUMENT ME!
     *
     * @return DOCUMENT ME!
     *
     * @throws IOException DOCUMENT ME!
     * @throws ServletException DOCUMENT ME!
     */
    public final ActionForward indexMenu(final ActionMapping actionMapping,
        final ActionForm actionForm, final HttpServletRequest request,
        final HttpServletResponse response)
        throws IOException, ServletException {

        // Remove the obsolete form bean
        removeAttribute(actionMapping, request);
        request.setAttribute("menu", catalogService.findCatalogByParent(null));

        return actionMapping.findForward("success");
    }

    /**
     * load all catalog as a tree
     *
     * @param mapping DOCUMENT ME!
     * @param form DOCUMENT ME!
     * @param request DOCUMENT ME!
     * @param response DOCUMENT ME!
     *
     * @return DOCUMENT ME!
     *
     * @throws IOException DOCUMENT ME!
     * @throws ServletException DOCUMENT ME!
     */
    public final ActionForward loadAll(final ActionMapping mapping,
        final ActionForm form, final HttpServletRequest request,
        final HttpServletResponse response)
        throws IOException, ServletException {

        ActionErrors errors = new ActionErrors();
        String action2 = request.getParameter("action2");
        Collection catalogtree;

        // if click cancel button goto cancel page
        if (isCancelled(request)) {

            removeAttribute(mapping, request);

            return (mapping.findForward("cancel"));
        }

        catalogtree = catalogService.getCatalogTree(0, null);
        request.setAttribute("catalogtree", catalogtree);
        saveToken(request);

        if (action2.equals("add")) {

            return (mapping.findForward("addSuccess"));
        } else if (action2.equals("edit")) {

            return (mapping.findForward("editSuccess"));
        } else if (action2.equals("remove")) {

            return (mapping.findForward("removeSuccess"));
        } else {

            return (mapping.findForward("cancel"));
        }
    }

    /**
     * remove catalog
     *
     * @param actionMapping DOCUMENT ME!
     * @param actionForm DOCUMENT ME!
     * @param request DOCUMENT ME!
     * @param response DOCUMENT ME!
     *
     * @return DOCUMENT ME!
     *
     * @throws IOException DOCUMENT ME!
     * @throws ServletException DOCUMENT ME!
     */
    public final ActionForward removeCatalog(
        final ActionMapping actionMapping,
        final ActionForm actionForm,
        final HttpServletRequest request,
        final HttpServletResponse response)
        throws IOException, ServletException {

        ActionErrors errors = new ActionErrors();
        DynaValidatorForm form = (DynaValidatorForm) actionForm;

        // Was this transaction cancelled?
        if (isCancelled(request)) {

            removeAttribute(actionMapping, request);

            return (actionMapping.findForward("cancel"));
        }

        //chack token
        if (!isTokenValid(request)) {

            errors.add(ActionErrors.GLOBAL_ERROR,
                new ActionError("errors.TokenError"));
            resetToken(request);

            return (actionMapping.getInputForward());
        }

        catalogService.removeCatalog(((Catalog) form.get("catalog"))
            .getCatalogId());

        if (!errors.isEmpty()) {

            saveErrors(request, errors);
            saveToken(request);

            return (actionMapping.getInputForward());
        } else {

            // Remove the obsolete form bean
            removeAttribute(actionMapping, request);

            return (actionMapping.findForward("success"));
        }
    }

    /**
     * update catalog title
     *
     * @param actionMapping DOCUMENT ME!
     * @param actionForm DOCUMENT ME!
     * @param request DOCUMENT ME!
     * @param response DOCUMENT ME!
     *
     * @return DOCUMENT ME!
     *
     * @throws IOException DOCUMENT ME!
     * @throws ServletException DOCUMENT ME!
     */
    public final ActionForward updateCatalog(
        final ActionMapping actionMapping,
        final ActionForm actionForm,
        final HttpServletRequest request,
        final HttpServletResponse response)
        throws IOException, ServletException {

        ActionErrors errors = new ActionErrors();
        DynaValidatorForm form = (DynaValidatorForm) actionForm;

        // Was this transaction cancelled?
        if (isCancelled(request)) {

            removeAttribute(actionMapping, request);

            return (actionMapping.findForward("cancel"));
        }

        //chack token
        if (!isTokenValid(request)) {

            errors.add(ActionErrors.GLOBAL_ERROR,
                new ActionError("errors.TokenError"));
            resetToken(request);

            return (actionMapping.getInputForward());
        }

        try {

            catalogService.updateCatalog((Catalog) form.get("catalog"));
        } catch (CatalogExistException e) {

            errors.add(ActionErrors.GLOBAL_ERROR,
                new ActionError("errors.CatalogExist"));
        }

        if (!errors.isEmpty()) {

            saveErrors(request, errors);
            saveToken(request);

            return (actionMapping.getInputForward());
        } else {

            // Remove the obsolete form bean
            removeAttribute(actionMapping, request);

            return (actionMapping.findForward("success"));
        }
    }

    /**
     * DOCUMENT ME!
     *
     * @param actionMapping DOCUMENT ME!
     * @param actionForm DOCUMENT ME!
     * @param request DOCUMENT ME!
     * @param response DOCUMENT ME!
     *
     * @return DOCUMENT ME!
     *
     * @throws IOException DOCUMENT ME!
     * @throws ServletException DOCUMENT ME!
     */
    public final ActionForward viewCatalog(final ActionMapping actionMapping,
        final ActionForm actionForm, final HttpServletRequest request,
        final HttpServletResponse response)
        throws IOException, ServletException {

        ActionErrors errors = new ActionErrors();
        Integer artCount = null;
        Article[] articles;
        Catalog catalog;

        //查询关键字
        String para = request.getParameter("para");

        //查询的目录
        String catalogId = request.getParameter("catalogId");

        //按什么排列
        String orderby = request.getParameter("orderby");

        //排列次序
        String sort = request.getParameter("sort");

        //第几页
        String page = request.getParameter("pager.offset");

        String[] args = { para, catalogId, orderby, sort, page };
        articles = articleService.find(args);
        artCount = articleService.getArtCount(args);

        if (!MyUtils.isBlank(catalogId)) {

            catalog = catalogService.getCatalog(catalogId);
            request.setAttribute("catalog", catalog);

            Catalog parent = catalog.getParent();

            if ((parent != null) && (parent.getCatalogId() != null)) {

                Map[] parentMap = catalogService.getParents(parent.getCatalogId());
                request.setAttribute("parents", parentMap);
            }
        }

        request.setAttribute("articles", articles);
        request.setAttribute("artCount", artCount);

        if (!errors.isEmpty()) {

            saveErrors(request, errors);

            return (actionMapping.findForward("faile"));
        } else {

            return (actionMapping.findForward("success"));
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -