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

📄 homepagetool.java

📁 java 写的一个新闻发布系统
💻 JAVA
字号:
////                                   ____.//                       __/\ ______|    |__/\.     _______//            __   .____|    |       \   |    +----+       \//    _______|  /--|    |    |    -   \  _    |    :    -   \_________//   \\______: :---|    :    :           |    :    |         \________>//           |__\---\_____________:______:    :____|____:_____\//                                      /_____|////              . . . i n   j a h i a   w e   t r u s t . . .////package org.jahia.admin.homepages;import java.io.*;import java.util.*;import javax.servlet.*;import javax.servlet.http.*;import org.jahia.bin.*;import org.jahia.engines.copytree.*;import org.jahia.exceptions.*;import org.jahia.params.*;import org.jahia.registries.*;import org.jahia.services.homepages.*;import org.jahia.services.pages.*;import org.jahia.services.sites.*;import org.jahia.utils.*;/** * desc:  This class is used by the administration to choose an home page. * * Copyright:    Copyright (c) 2002 * Company:      Jahia Ltd * * @version 1.0 */public class HomePageTool{    private static final String CLASS_NAME = HomePageTool.class.getName();    private static final String JSP_PATH = JahiaAdministration.JSP_PATH;    private JahiaSite jahiaSite;    private String message = "";    public static final String ENGINE_LAUNCHER_NAME = CLASS_NAME;    /**     * Default constructor.     *     * @param   request       Servlet request.     * @param   response      Servlet response.     * @param   session       Servlet session.     */    public HomePageTool(HttpServletRequest request, HttpServletResponse response,                        HttpSession session)    throws Throwable    {        // get the current website. get the jahiaserver if it's null...        jahiaSite = (JahiaSite)session.getAttribute(ParamBean.SESSION_SITE);        // continue the execution of the request...        requestDispatcher(request, response, session);    }    /**     * This method is used like a dispatcher for home page tool requests.     *     * @param   request       Servlet request.     * @param   response      Servlet response.     * @param   session       Servlet session.     */    public void requestDispatcher(HttpServletRequest request,                                  HttpServletResponse response,                                  HttpSession session)    throws Throwable    {        String operation = request.getParameter("subaction");        try {            if (operation.equals("display")) {                displayHomePageTool(request, response, session);            } else if (operation.equals("process")) {                processHomePageTool(request, response, session);            }        } catch (Throwable t) {            JahiaConsole.printe(CLASS_NAME + ".requestDispatcher", t);        }    }    /**     * Forward the servlet request and servlet response objects, using the request     * dispatcher (from the ServletContext). Note: please be careful, use only     * context relative path.     *     * @param       request             servlet request.     * @param       response            servlet response.     * @param       target              target, context-relative path.     * @exception   IOException         an I/O exception occured during the process.     * @exception   ServletException    a servlet exception occured during the process.     */    private void doRedirect( HttpServletRequest   request,                             HttpServletResponse  response,                             HttpSession          session,                             String               target )    throws IOException, ServletException    {        try        {            // check null warning msg            if( request.getAttribute("warningMsg") == null ) {                request.setAttribute("warningMsg", "");            }            // check null jsp bottom message, and fill in if necessary...            if( request.getAttribute("msg") == null ) {                request.setAttribute("msg", Jahia.COPYRIGHT);            }            if( request.getAttribute("focus") == null ) {                request.setAttribute("focus", "-none-");            }            // check null configuration step title, and fill in if necessary...            if( request.getAttribute("title") == null ) {                request.setAttribute("title", "Home Page Tool");            }            // redirect!            JahiaAdministration.doRedirect(request, response, session, target);        } catch (IOException ie) {            JahiaConsole.println(CLASS_NAME+".doRedirect() :" , "error " + ie.getMessage());        } catch (ServletException se) {            JahiaConsole.println(CLASS_NAME+".doRedirect() :",  "error " + se.getMessage());        }    }    private void displayHomePageTool(HttpServletRequest request,                                     HttpServletResponse response,                                     HttpSession session)    throws IOException, ServletException, JahiaException    {        JahiaConsole.println(CLASS_NAME+".displayHomePageTool", "Started");        // get the home page        JahiaHomepagesService homePageService = ServicesRegistry.getInstance().getJahiaHomepagesService();        Enumeration homePageEnumeration = homePageService.getHomepages(jahiaSite);        request.setAttribute("homePageEnumeration", homePageEnumeration);        // get all site pages id...        JahiaPageBaseService pageService = JahiaPageBaseService.getInstance();        Vector allPagesIDVector = pageService.getPageIDsInSite(jahiaSite.getID(),            org.jahia.services.pages.PageInfoInterface.TYPE_DIRECT);        // get all site pages infos...        ArrayList sitePages = new ArrayList();        Enumeration allPagesIDEnumeration = allPagesIDVector.elements();        while (allPagesIDEnumeration.hasMoreElements()) {            Integer pageID = (Integer)allPagesIDEnumeration.nextElement();            sitePages.add((JahiaPage)pageService.lookupPageWhitoutTemplates(pageID.intValue()));        }        request.setAttribute("sitePages", sitePages);        // get value from engineMap from the Tree Copy engine        HashMap engineMap = (HashMap)session.getAttribute(ParamBean.SESSION_JAHIA_ENGINEMAP);        if (engineMap != null) {            // check if the Tree engine was opened for this source page            String value = (String)engineMap.get(CopyTree_Engine.ENGINE_LAUNCHER_NAME);            if (value != null && value.equals(ENGINE_LAUNCHER_NAME)) {                // get the selected page                request.setAttribute("pageID", engineMap.get(CopyTree_Engine.SOURCEPAGE_ID));                // reset engine map                session.setAttribute(ParamBean.SESSION_JAHIA_ENGINEMAP, null);            }        }        request.setAttribute("jahiaSite", jahiaSite);        request.setAttribute("jspSource", JSP_PATH + "/homepages/popup/homepagetool.jsp");        session.setAttribute("jahiaDisplayMessage", Jahia.COPYRIGHT);        request.setAttribute("message", message);        doRedirect(request, response, session, JSP_PATH + "/adminpopup.jsp");        message = "";    }    private void processHomePageTool(HttpServletRequest request,                                     HttpServletResponse response,                                     HttpSession session)    throws IOException, ServletException, JahiaException    {        JahiaConsole.println(CLASS_NAME+".processHomePageTool", "Started");        String choice = request.getParameter("choice");        if (choice != null) {            if (choice.equals("sitePage")) {                String pageID = request.getParameter("pageID");                JahiaConsole.println(CLASS_NAME+".processHomePageTool.sitePage",                        "Site Page ID : " + pageID);                if (pageID == null) {                    message = "Please select one site page";                } else {                    session.setAttribute("homePageID", new Integer(pageID));                    session.setAttribute("homePageLabel", JahiaPageBaseService.                        getInstance().lookupPageWhitoutTemplates(Integer.parseInt(pageID)).getTitle());                    request.setAttribute("suicide", "");                }            } else if (choice.equals("removeHomePage")) {                session.setAttribute("homePageID", new Integer(-1));                session.setAttribute("homePageLabel", "none");                request.setAttribute("suicide", "");            } else { // Home page definition                JahiaHomepagesService homePageService =                    ServicesRegistry.getInstance().getJahiaHomepagesService();                String homePageDefID = request.getParameter("homePageDefID");                JahiaHomepage homePage = homePageService.getHomepage(Integer.parseInt(homePageDefID));                if (homePage.getType() == HomepageTypes.HOMEPAGE_LINK) {                    JahiaConsole.println(CLASS_NAME+".processHomePageTool.HOMEPAGE_LINK",                        "Home Page ID : " + homePageDefID);                    JahiaHomepageLink homePageLink = (JahiaHomepageLink)homePage;                    session.setAttribute("homePageID", new Integer(homePageLink.getPageID()));                    session.setAttribute("homePageLabel", JahiaPageBaseService.                        getInstance().lookupPageWhitoutTemplates(homePageLink.getPageID()).getTitle());                } else if (homePage.getType() == HomepageTypes.HOMEPAGE_NEW) {                    //                } else if (homePage.getType() == HomepageTypes.HOMEPAGE_COPY) {                    //                }                request.setAttribute("suicide", "");            }        } else {            message = "Please choose one of the above radio boxes";        }        displayHomePageTool(request, response, session);    }}

⌨️ 快捷键说明

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