亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? actionservlet.java

?? Apache struts-1.3.10 a stable version
?? JAVA
?? 第 1 頁 / 共 5 頁
字號:
    public void init() throws ServletException {
        final String configPrefix = "config/";
        final int configPrefixLength = configPrefix.length() - 1;

        // Wraps the entire initialization in a try/catch to better handle
        // unexpected exceptions and errors to provide better feedback
        // to the developer
        try {
            initInternal();
            initOther();
            initServlet();
            initChain();

            getServletContext().setAttribute(Globals.ACTION_SERVLET_KEY, this);
            initModuleConfigFactory();

            // Initialize modules as needed
            ModuleConfig moduleConfig = initModuleConfig("", config);

            initModuleMessageResources(moduleConfig);
            initModulePlugIns(moduleConfig);
            initModuleFormBeans(moduleConfig);
            initModuleForwards(moduleConfig);
            initModuleExceptionConfigs(moduleConfig);
            initModuleActions(moduleConfig);
            moduleConfig.freeze();

            Enumeration names = getServletConfig().getInitParameterNames();

            while (names.hasMoreElements()) {
                String name = (String) names.nextElement();

                if (!name.startsWith(configPrefix)) {
                    continue;
                }

                String prefix = name.substring(configPrefixLength);

                moduleConfig =
                    initModuleConfig(prefix,
                        getServletConfig().getInitParameter(name));
                initModuleMessageResources(moduleConfig);
                initModulePlugIns(moduleConfig);
                initModuleFormBeans(moduleConfig);
                initModuleForwards(moduleConfig);
                initModuleExceptionConfigs(moduleConfig);
                initModuleActions(moduleConfig);
                moduleConfig.freeze();
            }

            this.initModulePrefixes(this.getServletContext());

            this.destroyConfigDigester();
        } catch (UnavailableException ex) {
            throw ex;
        } catch (Throwable t) {
            // The follow error message is not retrieved from internal message
            // resources as they may not have been able to have been
            // initialized
            log.error("Unable to initialize Struts ActionServlet due to an "
                + "unexpected exception or error thrown, so marking the "
                + "servlet as unavailable.  Most likely, this is due to an "
                + "incorrect or missing library dependency.", t);
            throw new UnavailableException(t.getMessage());
        }
    }

    /**
     * <p>Saves a String[] of module prefixes in the ServletContext under
     * Globals.MODULE_PREFIXES_KEY.  <strong>NOTE</strong> - the "" prefix for
     * the default module is not included in this list.</p>
     *
     * @param context The servlet context.
     * @since Struts 1.2
     */
    protected void initModulePrefixes(ServletContext context) {
        ArrayList prefixList = new ArrayList();

        Enumeration names = context.getAttributeNames();

        while (names.hasMoreElements()) {
            String name = (String) names.nextElement();

            if (!name.startsWith(Globals.MODULE_KEY)) {
                continue;
            }

            String prefix = name.substring(Globals.MODULE_KEY.length());

            if (prefix.length() > 0) {
                prefixList.add(prefix);
            }
        }

        String[] prefixes =
            (String[]) prefixList.toArray(new String[prefixList.size()]);

        context.setAttribute(Globals.MODULE_PREFIXES_KEY, prefixes);
    }

    /**
     * <p>Process an HTTP "GET" request.</p>
     *
     * @param request  The servlet request we are processing
     * @param response The servlet response we are creating
     * @throws IOException      if an input/output error occurs
     * @throws ServletException if a servlet exception occurs
     */
    public void doGet(HttpServletRequest request, HttpServletResponse response)
        throws IOException, ServletException {
        process(request, response);
    }

    /**
     * <p>Process an HTTP "POST" request.</p>
     *
     * @param request  The servlet request we are processing
     * @param response The servlet response we are creating
     * @throws IOException      if an input/output error occurs
     * @throws ServletException if a servlet exception occurs
     */
    public void doPost(HttpServletRequest request, HttpServletResponse response)
        throws IOException, ServletException {
        process(request, response);
    }

    // --------------------------------------------------------- Public Methods

    /**
     * <p>Remember a servlet mapping from our web application deployment
     * descriptor, if it is for this servlet.</p>
     *
     * @param servletName The name of the servlet being mapped
     * @param urlPattern  The URL pattern to which this servlet is mapped
     */
    public void addServletMapping(String servletName, String urlPattern) {
        if (servletName == null) {
            return;
        }

        if (servletName.equals(this.servletName)) {
            if (log.isDebugEnabled()) {
                log.debug("Process servletName=" + servletName
                    + ", urlPattern=" + urlPattern);
            }

            this.servletMapping = urlPattern;
        }
    }

    /**
     * <p>Return the <code>MessageResources</code> instance containing our
     * internal message strings.</p>
     *
     * @return the <code>MessageResources</code> instance containing our
     *         internal message strings.
     * @since Struts 1.1
     */
    public MessageResources getInternal() {
        return (this.internal);
    }

    // ------------------------------------------------------ Protected Methods

    /**
     * <p>Gracefully terminate use of any modules associated with this
     * application (if any).</p>
     *
     * @since Struts 1.1
     */
    protected void destroyModules() {
        ArrayList values = new ArrayList();
        Enumeration names = getServletContext().getAttributeNames();

        while (names.hasMoreElements()) {
            values.add(names.nextElement());
        }

        Iterator keys = values.iterator();

        while (keys.hasNext()) {
            String name = (String) keys.next();
            Object value = getServletContext().getAttribute(name);

            if (!(value instanceof ModuleConfig)) {
                continue;
            }

            ModuleConfig config = (ModuleConfig) value;

            if (this.getProcessorForModule(config) != null) {
                this.getProcessorForModule(config).destroy();
            }

            getServletContext().removeAttribute(name);

            PlugIn[] plugIns =
                (PlugIn[]) getServletContext().getAttribute(Globals.PLUG_INS_KEY
                    + config.getPrefix());

            if (plugIns != null) {
                for (int i = 0; i < plugIns.length; i++) {
                    int j = plugIns.length - (i + 1);

                    plugIns[j].destroy();
                }

                getServletContext().removeAttribute(Globals.PLUG_INS_KEY
                    + config.getPrefix());
            }
        }
    }

    /**
     * <p>Gracefully release any configDigester instance that we have created.
     * </p>
     *
     * @since Struts 1.1
     */
    protected void destroyConfigDigester() {
        configDigester = null;
    }

    /**
     * <p>Gracefully terminate use of the internal MessageResources.</p>
     */
    protected void destroyInternal() {
        internal = null;
    }

    /**
     * <p>Return the module configuration object for the currently selected
     * module.</p>
     *
     * @param request The servlet request we are processing
     * @return The module configuration object for the currently selected
     *         module.
     * @since Struts 1.1
     */
    protected ModuleConfig getModuleConfig(HttpServletRequest request) {
        ModuleConfig config =
            (ModuleConfig) request.getAttribute(Globals.MODULE_KEY);

        if (config == null) {
            config =
                (ModuleConfig) getServletContext().getAttribute(Globals.MODULE_KEY);
        }

        return (config);
    }

    /**
     * <p>Look up and return the {@link RequestProcessor} responsible for the
     * specified module, creating a new one if necessary.</p>
     *
     * @param config The module configuration for which to acquire and return
     *               a RequestProcessor.
     * @return The {@link RequestProcessor} responsible for the specified
     *         module,
     * @throws ServletException If we cannot instantiate a RequestProcessor
     *                          instance a {@link UnavailableException} is
     *                          thrown, meaning your application is not loaded
     *                          and will not be available.
     * @since Struts 1.1
     */
    protected synchronized RequestProcessor getRequestProcessor(
        ModuleConfig config) throws ServletException {
        RequestProcessor processor = this.getProcessorForModule(config);

        if (processor == null) {
            try {
                processor =
                    (RequestProcessor) RequestUtils.applicationInstance(config.getControllerConfig()
                                                                              .getProcessorClass());
            } catch (Exception e) {
                throw new UnavailableException(
                    "Cannot initialize RequestProcessor of class "
                    + config.getControllerConfig().getProcessorClass() + ": "
                    + e);
            }

            processor.init(this, config);

            String key = Globals.REQUEST_PROCESSOR_KEY + config.getPrefix();

            getServletContext().setAttribute(key, processor);
        }

        return (processor);
    }

    /**
     * <p>Returns the RequestProcessor for the given module or null if one
     * does not exist.  This method will not create a RequestProcessor.</p>
     *
     * @param config The ModuleConfig.
     * @return The <code>RequestProcessor</code> for the given module, or
     *         <code>null</code> if one does not exist.
     */
    private RequestProcessor getProcessorForModule(ModuleConfig config) {
        String key = Globals.REQUEST_PROCESSOR_KEY + config.getPrefix();

        return (RequestProcessor) getServletContext().getAttribute(key);
    }

    /**
     * <p>Initialize the factory used to create the module configuration.</p>
     *
     * @since Struts 1.2
     */
    protected void initModuleConfigFactory() {
        String configFactory =
            getServletConfig().getInitParameter("configFactory");

        if (configFactory != null) {
            ModuleConfigFactory.setFactoryClass(configFactory);
        }
    }

    /**
     * <p>Initialize the module configuration information for the specified
     * module.</p>
     *
     * @param prefix Module prefix for this module
     * @param paths  Comma-separated list of context-relative resource path(s)
     *               for this modules's configuration resource(s)
     * @return The new module configuration instance.
     * @throws ServletException if initialization cannot be performed
     * @since Struts 1.1
     */
    protected ModuleConfig initModuleConfig(String prefix, String paths)
        throws ServletException {
        if (log.isDebugEnabled()) {
            log.debug("Initializing module path '" + prefix
                + "' configuration from '" + paths + "'");
        }

        // Parse the configuration for this module

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久99久久99精品免视看婷婷| 色一区在线观看| 最新国产の精品合集bt伙计| 日韩午夜精品电影| 欧美日韩国产综合久久| 欧美亚洲一区三区| 欧美日韩精品欧美日韩精品一 | 亚洲天堂a在线| 美女性感视频久久| 久久电影网电视剧免费观看| 日韩 欧美一区二区三区| 图片区日韩欧美亚洲| 天天操天天色综合| 97久久超碰精品国产| 91麻豆自制传媒国产之光| 在线亚洲一区观看| 日韩一二三区不卡| 亚洲国产日韩一区二区| 日本成人在线电影网| 一本一道综合狠狠老| 中文字幕久久午夜不卡| 国产精品国产三级国产普通话99 | 精品女同一区二区| 久久精品在这里| 国产精品欧美极品| 亚洲与欧洲av电影| 精品一区二区三区香蕉蜜桃 | 国产一区二区日韩精品| 99免费精品视频| 欧美系列日韩一区| 亚洲人成网站精品片在线观看| 亚洲成av人片在线观看无码| 激情偷乱视频一区二区三区| eeuss国产一区二区三区| 中文字幕第一区第二区| 国产乱人伦偷精品视频免下载| 91视频国产资源| 亚洲免费在线看| 日本精品视频一区二区三区| 一区二区三区在线观看动漫| 精品一区二区三区视频| 精品成人a区在线观看| 一区二区三区视频在线看| 色哟哟国产精品免费观看| 一区二区视频在线看| 精品一区二区影视| 久久久.com| 成人免费看视频| 日韩欧美一级在线播放| 亚洲综合小说图片| 精品视频1区2区| 亚洲三级久久久| 欧美少妇xxx| 蜜桃视频一区二区三区| 国产丝袜欧美中文另类| 一本久久精品一区二区| 亚洲成人中文在线| 日韩免费高清av| 高清久久久久久| 26uuu久久天堂性欧美| 亚洲一区二区三区在线播放| 欧美日韩久久一区| 黄色资源网久久资源365| 国产精品毛片高清在线完整版| 日本韩国精品一区二区在线观看| 午夜精品福利久久久| 久久丝袜美腿综合| 色网站国产精品| 蜜臀av性久久久久蜜臀av麻豆| 久久精品免费在线观看| 欧美性大战久久久| 从欧美一区二区三区| 亚洲gay无套男同| 欧美国产一区二区| 777久久久精品| 免费久久99精品国产| 欧美一区二区三级| 青青草精品视频| 亚洲日本va午夜在线影院| 日韩欧美一卡二卡| 欧美综合一区二区三区| 午夜电影网亚洲视频| 国产欧美一区二区三区在线看蜜臀| 经典一区二区三区| 亚洲一区免费在线观看| 久久综合久久99| 精品视频1区2区| caoporn国产精品| 韩国一区二区在线观看| 图片区小说区区亚洲影院| 国产精品另类一区| 精品国产一区二区三区不卡| 在线免费观看视频一区| 国产成人在线视频网站| 中文字幕一区二区三中文字幕| 在线免费观看一区| 国产精品77777竹菊影视小说| 五月天婷婷综合| 亚洲精品美腿丝袜| 国产精品国产三级国产普通话99| 欧美mv和日韩mv的网站| 欧美揉bbbbb揉bbbbb| 日本高清免费不卡视频| 91片黄在线观看| 成人动漫视频在线| 亚洲成人动漫在线观看| 亚洲欧美日韩国产中文在线| 国产精品青草综合久久久久99| 亚洲精品一区在线观看| 欧美大黄免费观看| 日韩女优av电影| 7777精品伊人久久久大香线蕉经典版下载| 91在线观看成人| 99久久精品国产毛片| www.综合网.com| 处破女av一区二区| 成人爱爱电影网址| 成人综合在线观看| 成人福利视频在线| 91视频在线观看| 欧美综合欧美视频| 777精品伊人久久久久大香线蕉| 欧美巨大另类极品videosbest | 日韩一区二区三区三四区视频在线观看 | 国产精品久久久久久久久动漫| 国产亲近乱来精品视频| ...中文天堂在线一区| 亚洲视频一区在线| 亚洲一区在线观看免费观看电影高清| 亚洲九九爱视频| 午夜在线电影亚洲一区| 日韩电影网1区2区| 国产一区在线观看视频| 成人影视亚洲图片在线| 99久久精品情趣| 欧美日韩在线亚洲一区蜜芽| 91精品国产色综合久久ai换脸| 91精品综合久久久久久| 精品伦理精品一区| 国产精品久久久久久一区二区三区| 中文字幕色av一区二区三区| 亚洲综合自拍偷拍| 伦理电影国产精品| 成人爽a毛片一区二区免费| 97国产一区二区| 91麻豆精品国产| 国产日韩在线不卡| 亚洲线精品一区二区三区| 久久成人av少妇免费| 99久久婷婷国产综合精品| 欧美唯美清纯偷拍| 久久久久久久一区| 777精品伊人久久久久大香线蕉| 欧美成人一区二区三区片免费| 国产精品美女久久久久久2018 | 久久青草欧美一区二区三区| 国产精品女上位| 亚洲成人动漫在线免费观看| 国产一区在线观看视频| 在线免费观看不卡av| 国产亚洲精品资源在线26u| 亚洲综合在线电影| 精品一区二区三区免费观看| 99精品1区2区| 亚洲精品一区二区三区99| 一区二区三区国产精华| 国产曰批免费观看久久久| 欧美在线一区二区三区| 日本一区二区三级电影在线观看 | 国产精品麻豆网站| 蜜桃久久av一区| 欧美中文字幕一区| 国产精品三级av| 国产综合色视频| 欧美日韩久久久| 亚洲综合色网站| 不卡视频一二三四| 久久色在线视频| 日本视频免费一区| 欧美日韩黄视频| 亚洲精品视频在线观看网站| 丁香激情综合五月| 精品国产3级a| 美女网站在线免费欧美精品| 欧美在线免费观看亚洲| 亚洲色欲色欲www在线观看| 国产精品一区久久久久| 日韩精品一区二区三区老鸭窝| 亚洲丶国产丶欧美一区二区三区| 91在线免费视频观看| 国产精品美女久久久久aⅴ国产馆| 国产综合色产在线精品| 日韩亚洲欧美在线| 日韩av不卡一区二区| 欧美精品一卡二卡| 日韩av电影天堂| 日韩欧美一级特黄在线播放| 日韩av中文字幕一区二区| 欧美顶级少妇做爰| 石原莉奈在线亚洲三区|