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

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

?? facestilesrequestprocessor.java

?? struts的源代碼
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
/*
 * Copyright 2002,2004 The Apache Software Foundation.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * 
 *      http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package org.apache.struts.faces.application;


import java.io.IOException;
import javax.faces.FactoryFinder;
import javax.faces.application.ViewHandler;
import javax.faces.component.UICommand;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.context.FacesContextFactory;
import javax.faces.event.ActionEvent;
import javax.faces.lifecycle.Lifecycle;
import javax.faces.lifecycle.LifecycleFactory;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.struts.Globals;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.config.FormBeanConfig;
import org.apache.struts.config.ForwardConfig;
import org.apache.struts.faces.Constants;
import org.apache.struts.faces.component.FormComponent;
import org.apache.struts.faces.util.HttpServletRequestWrapper;
import org.apache.struts.tiles.TilesRequestProcessor;


/**
 * <p>Concrete implementation of <code>RequestProcessor</code> that
 * implements the standard Struts request processing lifecycle on a
 * request that was received as an <code>ActionEvent</code> by our
 * associated <code>ActionListener</code>.  It replaces the request processor
 * instance normally configured by Struts+Tiles, so it must support non-Faces
 * requests as well.</p>
 *
 * @version $Rev: 56770 $ $Date: 2004-11-06 18:15:35 +0000 (Sat, 06 Nov 2004) $
 */

public class FacesTilesRequestProcessor extends TilesRequestProcessor {


    // ------------------------------------------------------ Instance Variables


    /**
     * <p>The log instance for this class.</p>
     */
    protected static Log log =
        LogFactory.getLog(FacesTilesRequestProcessor.class);



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


    /**
     * <p>Set up a Faces Request if we are not already processing one.  Next,
     * create a new view if the specified <code>uri</code> is different from
     * the current view identifier.  Finally, cause the new view to be
     * rendered, and call <code>FacesContext.responseComplete()</code> to
     * indicate that this has already been done.</p>
     *
     * @param uri Context-relative path to forward to
     * @param request Current page request
     * @param response Current page response
     *
     * @exception IOException if an input/output error occurs
     * @exception ServletException if a servlet error occurs
     */
    protected void doForward(String uri,
                             HttpServletRequest request,
                             HttpServletResponse response)
        throws IOException, ServletException {

        if (log.isDebugEnabled()) {
            log.debug("doForward(" + uri + ")");
        }

        // Remove the current ActionEvent (if any)
        request.removeAttribute(Constants.ACTION_EVENT_KEY);

        // Process a Struts controller request normally
        if (isStrutsRequest(uri)) {
            if (response.isCommitted()) {
                if (log.isTraceEnabled()) {
                    log.trace("  super.doInclude(" + uri + ")");
                }
                super.doInclude(uri, request, response);
            } else {
                if (log.isTraceEnabled()) {
                    log.trace("  super.doForward(" + uri + ")");
                }
                super.doForward(uri, request, response);
            }
            return;
        }

        // Create a FacesContext for this request if necessary
        LifecycleFactory lf = (LifecycleFactory)
            FactoryFinder.getFactory(FactoryFinder.LIFECYCLE_FACTORY);
        Lifecycle lifecycle = // FIXME - alternative lifecycle ids
            lf.getLifecycle(LifecycleFactory.DEFAULT_LIFECYCLE);
        boolean created = false;
        FacesContext context = FacesContext.getCurrentInstance();
        if (context == null) {
            if (log.isTraceEnabled()) {
                log.trace("  Creating new FacesContext for '" + uri + "'");
            }
            created = true;
            FacesContextFactory fcf = (FacesContextFactory)
                FactoryFinder.getFactory(FactoryFinder.FACES_CONTEXT_FACTORY);
            HttpServletRequestWrapper wrapper = new HttpServletRequestWrapper(request, uri);
            context = fcf.getFacesContext(servlet.getServletContext(), wrapper,
                                          response, lifecycle); 
            // Comment out the previous three lines and uncomment
            // the following two lines to test eliminating the wrapper
            // context = fcf.getFacesContext(servlet.getServletContext(),
            //                               request, response, lifecycle);
        }

        // Create a new view root
        ViewHandler vh = context.getApplication().getViewHandler();
        if (log.isTraceEnabled()) {
            log.trace("  Creating new view for '" + uri + "'");
        }
        context.setViewRoot(vh.createView(context, uri));

        // Cause the view to be rendered
        if (log.isTraceEnabled()) {
            log.trace("  Rendering view for '" + uri + "'");
        }
        lifecycle.render(context);
        if (created) {
            if (log.isTraceEnabled()) {
                log.trace("  Releasing context for '" + uri + "'");
            }
            context.release();
        } else {
            if (log.isTraceEnabled()) {
                log.trace("  Rendering completed");
            }
        }

    }


    // Override default processing to provide logging
    protected void internalModuleRelativeForward
        (String uri, HttpServletRequest request, HttpServletResponse response)
        throws IOException, ServletException {

        if (log.isTraceEnabled()) {
            log.trace("Performing internal module relative forward to '" +
                      uri + "'");
        }
        super.internalModuleRelativeForward(uri, request, response);

    }


    // Override default processing to provide logging
    protected Action processActionCreate(HttpServletRequest request,
                                         HttpServletResponse response,
                                         ActionMapping mapping)
        throws IOException {

        if (log.isTraceEnabled()) {
            log.trace("Performing standard action create");
        }
        Action result = super.processActionCreate(request, response, mapping);
        if (log.isDebugEnabled()) {
            log.debug("Standard action create returned " +
                      result.getClass().getName() + " instance");
        }
        return (result);

    }


    // Override default processing to provide logging
    protected ActionForm processActionForm(HttpServletRequest request,
                                           HttpServletResponse response,
                                           ActionMapping mapping) {
        if (log.isTraceEnabled()) {
            log.trace("Performing standard action form processing");
            String attribute = mapping.getAttribute();
            if (attribute != null) {
                String name = mapping.getName();
                FormBeanConfig fbc = moduleConfig.findFormBeanConfig(name);
                if (fbc != null) {
                    if ("request".equals(mapping.getScope())) {
                        log.trace("  Bean in request scope = " +
                                  request.getAttribute(attribute));
                    } else {
                        log.trace("  Bean in session scope = " +
                                  request.getSession().getAttribute(attribute));
                    }
                } else {
                    log.trace("  No FormBeanConfig for '" + name + "'");
                }
            } else {
                log.trace("  No form bean for this action");
            }
        }
        ActionForm result =
            super.processActionForm(request, response, mapping);
        if (log.isDebugEnabled()) {
            log.debug("Standard action form returned " +
                      result);
        }
        return (result);
        

    }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲国产日产av| 在线免费观看一区| 在线日韩av片| 久久久久久久久久看片| 亚洲日本在线视频观看| 蜜桃av噜噜一区二区三区小说| 国产成人午夜电影网| 欧美精品一级二级| 亚洲裸体xxx| 国产一区二区在线影院| 欧美久久久久久久久久| 一区二区三区成人| av亚洲精华国产精华| 久久久青草青青国产亚洲免观| 香蕉成人伊视频在线观看| 成人精品电影在线观看| 久久品道一品道久久精品| 日本不卡不码高清免费观看| 欧美视频一区在线| 亚洲乱码日产精品bd| 91丨九色porny丨蝌蚪| 欧美国产日本视频| 国产精品18久久久久| 精品免费日韩av| 久久精品噜噜噜成人88aⅴ| 91精品午夜视频| 日韩中文字幕麻豆| 91麻豆精品久久久久蜜臀| 亚洲成av人片www| 欧美日韩国产综合久久 | 久久久夜色精品亚洲| 欧美aaa在线| 日韩写真欧美这视频| 免费日韩伦理电影| 精品剧情v国产在线观看在线| 美女任你摸久久| 日韩欧美一区二区视频| 蜜臀av一区二区| 精品国产免费久久 | 91污片在线观看| 成人免费小视频| 91在线porny国产在线看| 亚洲柠檬福利资源导航| 色老汉av一区二区三区| 亚洲第一福利视频在线| 91精选在线观看| 国产一区二区精品在线观看| 国产精品乱人伦一区二区| 99re这里只有精品首页| 一卡二卡三卡日韩欧美| 欧美日本一区二区三区| 精品一区二区久久久| 久久女同互慰一区二区三区| 99久久精品国产一区二区三区| 亚洲免费看黄网站| 5858s免费视频成人| 国产一区二区三区在线观看免费视频| 国产欧美精品在线观看| 一本一道久久a久久精品综合蜜臀| 一区二区高清在线| 精品久久一二三区| 91蜜桃免费观看视频| 午夜精品福利一区二区三区蜜桃| 精品国产髙清在线看国产毛片| 国产精品乡下勾搭老头1| 亚洲视频小说图片| 精品国产网站在线观看| 91麻豆精品一区二区三区| 美女一区二区三区在线观看| 欧美激情中文不卡| 欧美美女直播网站| 成人免费视频视频在线观看免费 | 欧美高清在线一区| 欧美日韩在线免费视频| 国产精品正在播放| 日韩在线卡一卡二| 亚洲欧美中日韩| 精品剧情在线观看| 欧美日韩一级视频| 国产盗摄视频一区二区三区| 亚洲va欧美va天堂v国产综合| 国产欧美一区二区精品仙草咪 | 亚洲成av人片一区二区三区| 久久午夜色播影院免费高清| 欧洲一区二区三区在线| 成人午夜免费视频| 久久国产精品99精品国产| 亚洲免费观看高清| 国产亚洲人成网站| 日韩欧美高清一区| 欧美亚洲图片小说| 99久久国产综合精品色伊| 韩国女主播成人在线| 亚洲福利视频三区| 亚洲精品五月天| 国产精品初高中害羞小美女文| 久久久亚洲高清| 26uuu久久天堂性欧美| 日韩欧美一区二区在线视频| 欧美日韩精品一区二区三区四区| 91老司机福利 在线| www.欧美日韩| 粗大黑人巨茎大战欧美成人| 国产麻豆成人精品| 精东粉嫩av免费一区二区三区| 日韩电影在线免费观看| 亚洲成av人片一区二区梦乃| 亚洲国产人成综合网站| 亚洲精品中文在线观看| 亚洲精品中文在线观看| 亚洲裸体在线观看| 一区二区三区四区在线| 亚洲精品自拍动漫在线| 一区二区三区在线高清| 玉足女爽爽91| 亚洲国产精品久久艾草纯爱 | 国产成人鲁色资源国产91色综| 激情综合色综合久久| 韩国精品一区二区| 国产精品原创巨作av| 成人免费视频免费观看| 一本色道久久综合精品竹菊| 色狠狠综合天天综合综合| 在线看国产日韩| 欧美高清精品3d| 欧美大片在线观看一区| 精品动漫一区二区三区在线观看| 欧美精品一区二区三区很污很色的 | 成人av午夜电影| av午夜一区麻豆| 欧美在线一二三| 日韩视频一区在线观看| 久久午夜羞羞影院免费观看| 中文字幕av一区二区三区| 亚洲色图色小说| 五月综合激情网| 国产在线精品免费| www.性欧美| 欧美精品一二三| 欧美国产精品劲爆| 伊人色综合久久天天| 日本欧美在线看| 国产69精品久久99不卡| 欧美视频在线观看一区| 欧美大片日本大片免费观看| 国产精品二区一区二区aⅴ污介绍| 亚洲一区二区三区激情| 韩国成人精品a∨在线观看| 91啪九色porn原创视频在线观看| 91精品国产福利| 欧美韩国日本不卡| 日韩经典中文字幕一区| 国产馆精品极品| 欧美日韩一区在线| 欧美经典三级视频一区二区三区| 一区二区三区在线视频免费| 久久成人av少妇免费| 成人免费视频网站在线观看| 欧美精品日韩精品| 国产精品美女久久久久久久久| 天天综合色天天综合| 成人小视频在线观看| 9191久久久久久久久久久| 国产精品每日更新| 精品一区二区三区日韩| 91成人在线观看喷潮| 国产无一区二区| 欧美调教femdomvk| 国产欧美日韩三级| 日韩美女久久久| 极品少妇一区二区| 欧美在线你懂得| 亚洲精品成a人| 精品一区二区三区免费播放 | 久久久久久久免费视频了| 紧缚捆绑精品一区二区| 国产精品久久777777| 日韩精品成人一区二区在线| 国产乱人伦偷精品视频不卡| 成人午夜电影久久影院| 精品在线观看视频| 成人黄色电影在线 | 韩国欧美一区二区| 久久综合99re88久久爱| 成人自拍视频在线| 中文字幕一区二区三区在线不卡| 99久久精品国产导航| 一区二区三区国产精华| 3d动漫精品啪啪| 久久99精品久久久久久久久久久久| 精品国产sm最大网站免费看| 国产真实乱对白精彩久久| 国产精品欧美精品| 91片黄在线观看| 日韩av不卡一区二区| 久久婷婷色综合| 91丨porny丨最新| 日本成人在线一区| 日本一区二区成人| 欧美午夜精品久久久久久超碰|