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

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? defaultdecoratorfactory.java

?? dispalytag的源碼
?? JAVA
字號(hào):
/** * Licensed under the Artistic License; you may not use this file * except in compliance with the License. * You may obtain a copy of the License at * *      http://displaytag.sourceforge.net/license.html * * THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. */package org.displaytag.decorator;import javax.servlet.jsp.PageContext;import org.apache.commons.lang.StringUtils;import org.displaytag.exception.DecoratorException;import org.displaytag.exception.DecoratorInstantiationException;import org.displaytag.properties.MediaTypeEnum;import org.displaytag.util.ReflectHelper;/** * Factory for TableDecorator or ColumnDecorator object. * @author Fabrizio Giustina * @version $Id$ */public class DefaultDecoratorFactory implements DecoratorFactory{    /**     * <p>     * If the user has specified a decorator, then this method takes care of creating the decorator (and checking to     * make sure it is a subclass of the TableDecorator object). If there are any problems loading the decorator then     * this will throw a DecoratorInstantiationException which will get propagated up to the page.     * </p>     * <p>     * Two different methods for loading a decorator are handled by this factory:     * </p>     * <ul>     * <li>First of all, an object with key <code>decoratorName</code> is searched in the page/request/session/scope</li>     * <li>If not found, assume <code>decoratorName</code> is the class name of the decorator and load it using     * reflection</li>     * </ul>     * @param decoratorName String full decorator class name     * @return instance of TableDecorator     * @throws DecoratorInstantiationException if unable to load specified TableDecorator     */    public TableDecorator loadTableDecorator(PageContext pageContext, String decoratorName)        throws DecoratorInstantiationException    {        if (StringUtils.isBlank(decoratorName))        {            return null;        }        // first check: is decoratorName an object in page/request/session/application scope?        Object decorator = pageContext.findAttribute(decoratorName);        // second check: if a decorator was not found assume decoratorName is the class name and load it using        // reflection        if (decorator == null)        {            try            {                decorator = ReflectHelper.classForName(decoratorName).newInstance();            }            catch (ClassNotFoundException e)            {                throw new DecoratorInstantiationException(DefaultDecoratorFactory.class, decoratorName, e);            }            catch (InstantiationException e)            {                throw new DecoratorInstantiationException(DefaultDecoratorFactory.class, decoratorName, e);            }            catch (IllegalAccessException e)            {                throw new DecoratorInstantiationException(DefaultDecoratorFactory.class, decoratorName, e);            }        }        if (decorator instanceof TableDecorator)        {            return (TableDecorator) decorator;        }        else        {            throw new DecoratorInstantiationException(                DefaultDecoratorFactory.class,                decoratorName,                new ClassCastException(decorator.getClass().getName()));        }    }    /**     * <p>     * If the user has specified a column decorator, then this method takes care of creating the decorator (and checking     * to make sure it is a subclass of the DisplaytagColumnDecorator object). If there are any problems loading the     * decorator then this will throw a DecoratorInstantiationException which will get propagated up to the page.     * </p>     * <p>     * Two different methods for loading a decorator are handled by this factory:     * </p>     * <ul>     * <li>First of all, an object with key <code>decoratorName</code> is searched in the page/request/session/scope</li>     * <li>If not found, assume <code>decoratorName</code> is the class name of the decorator and load it using     * reflection</li>     * </ul>     * @param decoratorName String full decorator class name     * @return instance of DisplaytagColumnDecorator     * @throws DecoratorInstantiationException if unable to load ColumnDecorator     */    public DisplaytagColumnDecorator loadColumnDecorator(PageContext pageContext, String decoratorName)        throws DecoratorInstantiationException    {        if (StringUtils.isBlank(decoratorName))        {            return null;        }        // first check: is decoratorName an object in page/request/session/application scope?        Object decorator = pageContext.findAttribute(decoratorName);        // second check: if a decorator was not found assume decoratorName is the class name and load it using        // reflection        if (decorator == null)        {            try            {                decorator = ReflectHelper.classForName(decoratorName).newInstance();            }            catch (ClassNotFoundException e)            {                throw new DecoratorInstantiationException(DefaultDecoratorFactory.class, decoratorName, e);            }            catch (InstantiationException e)            {                throw new DecoratorInstantiationException(DefaultDecoratorFactory.class, decoratorName, e);            }            catch (IllegalAccessException e)            {                throw new DecoratorInstantiationException(DefaultDecoratorFactory.class, decoratorName, e);            }        }        if (decorator instanceof DisplaytagColumnDecorator)        {            return (DisplaytagColumnDecorator) decorator;        }        else if (decorator instanceof ColumnDecorator)        {            return new DeprecatedDecoratorWrapper((ColumnDecorator) decorator);        }        else        {            throw new DecoratorInstantiationException(                DefaultDecoratorFactory.class,                decoratorName,                new ClassCastException(decorator.getClass().getName()));        }    }    /**     * Wrapper class for handling decorators implementing the deprecated ColumnDecorator interface as 1.1     * <code>DisplaytagColumnDecorator</code>s.     */    private static class DeprecatedDecoratorWrapper implements DisplaytagColumnDecorator    {        /**         * Wrapped 1.0 decorator.         */        private ColumnDecorator decorator;        /**         * Instantiates a new wrapper for old decorators.         * @param decorator ColumnDecorator instance         */        public DeprecatedDecoratorWrapper(ColumnDecorator decorator)        {            this.decorator = decorator;        }        /**         * @see org.displaytag.decorator.DisplaytagColumnDecorator#decorate(Object, PageContext, MediaTypeEnum)         * @deprecated         */        public Object decorate(Object columnValue, PageContext pageContext, MediaTypeEnum media)            throws DecoratorException        {            return decorator.decorate(columnValue);        }    }}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一本色道久久综合精品竹菊| 成人午夜电影小说| 欧美成人精品1314www| 国产成人午夜电影网| 亚洲欧美中日韩| 69堂国产成人免费视频| 国产精品18久久久久久久网站| 国产精品天天看| 欧美性视频一区二区三区| 男女激情视频一区| 亚洲色大成网站www久久九九| 欧美日韩亚洲丝袜制服| 裸体在线国模精品偷拍| 中文字幕亚洲一区二区va在线| 欧美精选在线播放| 成人av网站免费| 蜜桃传媒麻豆第一区在线观看| 国产欧美日韩视频一区二区| 欧美日韩一级片网站| 国产精品996| 一卡二卡欧美日韩| 久久精品一区二区三区不卡牛牛 | 精品少妇一区二区三区在线视频| 成人亚洲一区二区一| 丝袜诱惑亚洲看片| 国产精品久久久久久久蜜臀| 欧美日韩不卡在线| voyeur盗摄精品| 久久99精品国产.久久久久| 综合电影一区二区三区 | 成人综合婷婷国产精品久久蜜臀| 亚洲欧洲韩国日本视频| 欧美日韩夫妻久久| 色婷婷激情久久| 国产精品18久久久久久久网站| 亚洲大片精品永久免费| 亚洲日本护士毛茸茸| 久久精品无码一区二区三区| 日本伦理一区二区| gogogo免费视频观看亚洲一| 国产麻豆精品在线| 蜜桃在线一区二区三区| 亚洲va欧美va天堂v国产综合| 国产精品人妖ts系列视频| 日韩一区二区高清| 91精品国产欧美一区二区18| 91美女在线观看| 国产精品一区在线观看你懂的| 偷拍一区二区三区| 亚洲亚洲精品在线观看| 国产精品不卡一区| 久久日一线二线三线suv| 欧美一区二区三区视频在线| 精品视频123区在线观看| 在线精品观看国产| 在线观看亚洲a| 在线精品视频免费播放| 成人午夜激情在线| 成人免费视频一区| 国产麻豆午夜三级精品| 激情欧美一区二区| 欧美国产亚洲另类动漫| 色综合天天在线| 91亚洲精品一区二区乱码| 国产激情精品久久久第一区二区 | 中文字幕欧美三区| 精品国产免费一区二区三区香蕉 | 欧美成人一级视频| 欧美大片日本大片免费观看| 精品国产乱子伦一区| 久久综合色天天久久综合图片| 欧美精品一区二区三区视频| 26uuu色噜噜精品一区二区| 久久婷婷成人综合色| 欧美成人三级电影在线| 日韩天堂在线观看| 26uuu精品一区二区三区四区在线| 2014亚洲片线观看视频免费| 欧美变态凌虐bdsm| 中文字幕不卡一区| 亚洲久草在线视频| 男人的j进女人的j一区| 国产乱子伦一区二区三区国色天香| 国产一区三区三区| 91一区一区三区| 91丝袜美女网| 欧美另类高清zo欧美| 精品精品国产高清a毛片牛牛 | 欧美三级日韩在线| 911精品国产一区二区在线| 中文字幕第一区| 奇米影视在线99精品| 99re成人精品视频| 亚洲精品在线观看视频| 亚洲电影第三页| 9久草视频在线视频精品| 欧美一区二区成人| 亚洲韩国一区二区三区| 成人黄色国产精品网站大全在线免费观看 | 蜜臀va亚洲va欧美va天堂| 成人黄色综合网站| 精品处破学生在线二十三| 亚洲第一会所有码转帖| 成人免费va视频| 26uuu精品一区二区三区四区在线| 亚洲成人在线免费| 一道本成人在线| 国产精品麻豆久久久| 国产一区二区三区不卡在线观看| 欧美日韩中字一区| 亚洲理论在线观看| 99久久精品国产观看| 精品日本一线二线三线不卡| 午夜成人免费电影| 欧美在线影院一区二区| 亚洲图片激情小说| 成人短视频下载| 国产精品私人影院| 国产成人综合亚洲网站| xnxx国产精品| 久久www免费人成看片高清| 正在播放亚洲一区| 五月婷婷欧美视频| 欧美日韩综合不卡| 亚洲成人你懂的| 欧美日本乱大交xxxxx| 亚洲国产精品一区二区www在线| 91蝌蚪porny九色| 亚洲欧美综合色| 99re成人精品视频| 亚洲欧美日韩电影| 色婷婷久久久久swag精品| 亚洲婷婷综合色高清在线| www.66久久| 亚洲视频资源在线| 日本精品视频一区二区三区| 中文字幕中文字幕一区二区| 成人av在线电影| 日韩一区日韩二区| 日本韩国欧美一区| 亚洲尤物视频在线| 欧美精品日韩一区| 久久成人综合网| 国产视频一区二区在线| 国产91在线观看| 一区在线观看免费| 在线观看不卡视频| 午夜视频久久久久久| 日韩一区二区三区免费看| 久久国产精品72免费观看| 久久欧美中文字幕| 97超碰欧美中文字幕| 亚洲一区二区欧美日韩| 制服丝袜一区二区三区| 久久91精品国产91久久小草 | 日韩视频一区二区在线观看| 九九在线精品视频| 国产日韩欧美综合在线| 97国产一区二区| 亚洲h精品动漫在线观看| 精品美女一区二区三区| 北条麻妃国产九九精品视频| 亚洲人xxxx| 6080国产精品一区二区| 国内国产精品久久| 国产精品二区一区二区aⅴ污介绍| 欧美在线小视频| 久久爱另类一区二区小说| 国产精品久久福利| 欧美精品一二三区| 国产精品99久久久久久久vr| 亚洲精品乱码久久久久久日本蜜臀| 欧美日韩国产色站一区二区三区| 麻豆91免费观看| 国产精品美女久久久久高潮| 欧美视频在线一区| 国产一区二区在线观看视频| 一区二区三区在线视频观看58| 91精品欧美一区二区三区综合在 | 亚洲狠狠丁香婷婷综合久久久| 91精品国产欧美一区二区18| 成人午夜在线免费| 丝袜亚洲精品中文字幕一区| 欧美国产精品一区| 欧美高清视频www夜色资源网| 国产精品一区二区果冻传媒| 亚洲国产wwwccc36天堂| 国产丝袜欧美中文另类| 欧美高清视频一二三区 | 精品国精品自拍自在线| 色综合久久久久网| 国产成人免费视频网站| 天堂在线亚洲视频| 椎名由奈av一区二区三区| 日韩三级视频中文字幕| 91老师国产黑色丝袜在线| 国产精品资源站在线| 图片区小说区国产精品视频| 亚洲图片激情小说| 国产欧美1区2区3区|