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

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

?? tabletag.java

?? dispalytag的源碼
?? JAVA
?? 第 1 頁 / 共 4 頁
字號:
     * @param value "page" (sort a single page) or "list" (sort the full list)     * @throws InvalidTagAttributeValueException if value is not "page" or "list"     */    public void setSort(String value) throws InvalidTagAttributeValueException    {        if (TableTagParameters.SORT_AMOUNT_PAGE.equals(value))        {            this.sortFullTable = Boolean.FALSE;        }        else if (TableTagParameters.SORT_AMOUNT_LIST.equals(value))        {            this.sortFullTable = Boolean.TRUE;        }        else if (TableTagParameters.SORT_AMOUNT_EXTERNAL.equals(value))        {            this.localSort = false;        }        else        {            throw new InvalidTagAttributeValueException(getClass(), "sort", value); //$NON-NLS-1$        }    }    /**     * setter for the "requestURI" attribute. Context path is automatically added to path starting with "/".     * @param value base URI for creating links     */    public void setRequestURI(String value)    {        this.requestUri = value;    }    /**     * Setter for the "requestURIcontext" attribute.     * @param value base URI for creating links     */    public void setRequestURIcontext(boolean value)    {        this.dontAppendContext = !value;    }    /**     * Used to directly set a list (or any object you can iterate on).     * @param value Object     * @deprecated use setName() to get the object from the page or request scope instead of setting it directly here     */    public void setList(Object value)    {        this.listAttribute = value;    }    /**     * Sets the name of the object to use for iteration.     * @param value name of the object to use for iteration (can contain expression). It also supports direct setting of     * a list, for jsp 2.0 containers where users can set up a data source here using EL expressions.     */    public void setName(Object value)    {        if (value instanceof String)        {            // ok, assuming this is the name of the object            this.name = (String) value;        }        else        {            // is this the list?            this.list = value;        }    }    /**     * Sets the name of the object to use for iteration. This setter is needed for jsp 1.1 container which doesn't     * support the String - Object conversion. The bean info class will swith to this setter.     * @param value name of the object     */    public void setNameString(String value)    {        this.name = value;    }    /**     * sets the sorting order for the sorted column.     * @param value "ascending" or "descending"     * @throws InvalidTagAttributeValueException if value is not one of "ascending" or "descending"     */    public void setDefaultorder(String value) throws InvalidTagAttributeValueException    {        this.defaultSortOrder = SortOrderEnum.fromName(value);        if (this.defaultSortOrder == null)        {            throw new InvalidTagAttributeValueException(getClass(), "defaultorder", value); //$NON-NLS-1$        }    }    /**     * Setter for the decorator class name.     * @param decorator fully qualified name of the table decorator to use     */    public void setDecorator(String decorator)    {        this.decoratorName = decorator;    }    /**     * Is export enabled?     * @param value <code>true</code> if export should be enabled     */    public void setExport(boolean value)    {        this.export = value;    }    /**     * The variable name in which the totals map is stored.     * @param varTotalsName the value     */    public void setVarTotals(String varTotalsName)    {        this.varTotals = varTotalsName;    }    /**     * Get the name that the totals should be stored under.     * @return the var name in pageContext     */    public String getVarTotals()    {        return this.varTotals;    }    /**     * sets the number of items to be displayed in the page.     * @param value number of items to display in a page     */    public void setLength(int value)    {        this.length = value;    }    /**     * sets the index of the default sorted column.     * @param value index of the column to sort     */    public void setDefaultsort(int value)    {        // subtract one (internal index is 0 based)        this.defaultSortedColumn = value - 1;    }    /**     * sets the number of items that should be displayed for a single page.     * @param value number of items that should be displayed for a single page     */    public void setPagesize(int value)    {        this.pagesize = value;    }    /**     * tells display tag that the values contained in the list are the viewable data only, there may be more results not     * given to displaytag     * @param partialList boolean value telling us there may be more data not given to displaytag     */    public void setPartialList(boolean partialList)    {        this.partialList = partialList;    }    /**     * Setter for the list offset attribute.     * @param value String     */    public void setOffset(int value)    {        if (value < 1)        {            // negative values has no meaning, simply treat them as 0            this.offset = 0;        }        else        {            this.offset = value - 1;        }    }    /**     * Sets the unique id used to identify for this table.     * @param value String     */    public void setUid(String value)    {        this.uid = value;    }    /**     * Returns the unique id used to identify for this table.     * @return id for this table     */    public String getUid()    {        return this.uid;    }    /**     * Returns the properties.     * @return TableProperties     */    protected TableProperties getProperties()    {        return this.properties;    }    /**     * Returns the base href with parameters. This is the instance used for links, need to be cloned before being     * modified.     * @return base Href with parameters     */    protected Href getBaseHref()    {        return this.baseHref;    }    /**     * Called by interior column tags to help this tag figure out how it is supposed to display the information in the     * List it is supposed to display.     * @param column an internal tag describing a column in this tableview     */    public void addColumn(HeaderCell column)    {        if (log.isDebugEnabled())        {            log.debug("[" + getUid() + "] addColumn " + column);        }        if ((this.paginatedList != null) && (column.getSortable()))        {            String sortCriterion = paginatedList.getSortCriterion();            String sortProperty = column.getSortProperty();            if (sortProperty == null)            {                sortProperty = column.getBeanPropertyName();            }            if ((sortCriterion != null) && sortCriterion.equals(sortProperty))            {                this.tableModel.setSortedColumnNumber(this.tableModel.getNumberOfColumns());                column.setAlreadySorted();            }        }        this.tableModel.addColumnHeader(column);    }    /**     * Adds a cell to the current row. This method is usually called by a contained ColumnTag     * @param cell Cell to add to the current row     */    public void addCell(Cell cell)    {        // check if null: could be null if list is empty, we don't need to fill rows        if (this.currentRow != null)        {            int columnNumber = this.currentRow.getCellList().size();            this.currentRow.addCell(cell);            // just be sure that the number of columns has not been altered by conditionally including column tags in            // different rows. This is not supported, but better avoid IndexOutOfBounds...            if (columnNumber < tableModel.getHeaderCellList().size())            {                HeaderCell header = (HeaderCell) tableModel.getHeaderCellList().get(columnNumber);                header.addCell(new Column(header, cell, currentRow));            }        }    }    /**     * Is this the first iteration?     * @return boolean <code>true</code> if this is the first iteration     */    protected boolean isFirstIteration()    {        if (log.isDebugEnabled())        {            log.debug("["                + getUid()                + "] first iteration="                + (this.rowNumber == 1)                + " (row number="                + this.rowNumber                + ")");        }        // in first iteration this.rowNumber is 1        // (this.rowNumber is incremented in doAfterBody)        return this.rowNumber == 1;    }    /**     * When the tag starts, we just initialize some of our variables, and do a little bit of error checking to make sure     * that the user is not trying to give us parameters that we don't expect.     * @return int     * @throws JspException generic exception     * @see javax.servlet.jsp.tagext.Tag#doStartTag()     */    public int doStartTag() throws JspException    {        DependencyChecker.check();        // needed before column processing, elsewhere registered views will not be added        ExportViewFactory.getInstance();        if (log.isDebugEnabled())        {            log.debug("[" + getUid() + "] doStartTag called");        }        this.properties = TableProperties.getInstance((HttpServletRequest) pageContext.getRequest());        this.tableModel = new TableModel(this.properties, pageContext.getResponse().getCharacterEncoding(), pageContext);        // copying id to the table model for logging        this.tableModel.setId(getUid());        this.tableModel.setForm(this.form);        initParameters();        this.tableModel.setMedia(this.currentMediaType);        Object previousMediaType = this.pageContext.getAttribute(PAGE_ATTRIBUTE_MEDIA);        // set the PAGE_ATTRIBUTE_MEDIA attribute in the page scope        if (previousMediaType == null || MediaTypeEnum.HTML.equals(previousMediaType))        {            if (log.isDebugEnabled())            {                log.debug("[" + getUid() + "] setting media [" + this.currentMediaType + "] in this.pageContext");            }            this.pageContext.setAttribute(PAGE_ATTRIBUTE_MEDIA, this.currentMediaType);        }        doIteration();        // always return EVAL_BODY_TAG to get column headers also if the table is empty        // using int to avoid deprecation error in compilation using j2ee 1.3        return 2;    }    /**     * @see javax.servlet.jsp.tagext.BodyTag#doAfterBody()     */    public int doAfterBody()    {        // doAfterBody() has been called, body is not empty        this.doAfterBodyExecuted = true;        if (log.isDebugEnabled())        {            log.debug("[" + getUid() + "] doAfterBody called - iterating on row " + this.rowNumber);        }        // increment this.rowNumber        this.rowNumber++;        // Call doIteration() to do the common work        return doIteration();    }    /**     * Utility method that is used by both doStartTag() and doAfterBody() to perform an iteration.     * @return <code>int</code> either EVAL_BODY_TAG or SKIP_BODY depending on whether another iteration is desired.     */    protected int doIteration()    {        if (log.isDebugEnabled())        {            log.debug("[" + getUid() + "] doIteration called");        }        // Row already filled?        if (this.currentRow != null)        {            // if yes add to table model and remove            this.tableModel.addRow(this.currentRow);            this.currentRow = null;        }        if (this.tableIterator.hasNext())        {            Object iteratedObject = this.tableIterator.next();            if (getUid() != null)            {                if ((iteratedObject != null))                {                    // set object into this.pageContext                    if (log.isDebugEnabled())                    {                        log.debug("[" + getUid() + "] setting attribute \"" + getUid() + "\" in pageContext");                    }                    this.pageContext.setAttribute(getUid(), iteratedObject);                }                else                {                    // if row is null remove previous object                    this.pageContext.removeAttribute(getUid());                }                // set the current row number into this.pageContext                this.pageContext.setAttribute(getUid() + TableTagExtraInfo.ROWNUM_SUFFIX, new Integer(this.rowNumber));            }            // Row object for Cell values            this.currentRow = new Row(iteratedObject, this.rowNumber);            this.lastIteration = !this.tableIterator.hasNext();            // new iteration            // using int to avoid deprecation error in compilation using j2ee 1.3            return 2;        }        this.lastIteration = true;        if (log.isDebugEnabled())        {            log.debug("[" + getUid() + "] doIteration() - iterator ended after " + (this.rowNumber - 1) + " rows");        }        // end iteration        return SKIP_BODY;    }    /**     * Get the given parameter from the request or, if not avaible, look for into into the session if keepstatus is set.     * Also takes care of storing an existing paramter into session.     * @param request servlet request     * @param requestHelper request helper instance     * @param parameter parameter, will be encoded     * @return value value taken from a request parameter or from a session attribute     */    private Integer getFromRequestOrSession(HttpServletRequest request, RequestHelper requestHelper, String parameter)    {        String encodedParam = encodeParameter(parameter);        Integer result = requestHelper.getIntParameter(encodedParam);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产乱码精品一区二区三| 国产福利不卡视频| 国产伦精品一区二区三区视频青涩| 韩国午夜理伦三级不卡影院| 成人a免费在线看| 欧美视频你懂的| 精品国产伦一区二区三区观看方式| 国产精品午夜电影| 日韩二区三区四区| 成人高清免费在线播放| 欧美日韩综合在线免费观看| 久久婷婷国产综合精品青草| 一区二区三区国产精华| 国产精品一区二区你懂的| 欧美日产国产精品| 中文字幕第一区第二区| 奇米精品一区二区三区四区| av激情综合网| 2021国产精品久久精品| 亚洲成人久久影院| 成人动漫一区二区在线| 精品少妇一区二区三区日产乱码| 亚洲欧美经典视频| 高清在线不卡av| 精品国产一区二区在线观看| 亚洲成人自拍网| 色综合天天综合网天天看片| 久久久久久久久久久久电影| 欧美aa在线视频| 欧美三级视频在线| 亚洲色图清纯唯美| 大尺度一区二区| 久久久不卡网国产精品一区| 日本美女一区二区三区| 欧美视频在线一区二区三区 | 一区二区三区高清在线| 国产一区二区三区电影在线观看| 6080亚洲精品一区二区| 亚洲免费观看高清完整版在线观看熊 | 成人免费一区二区三区视频 | 五月综合激情日本mⅴ| 色综合久久中文字幕综合网| 国产精品久久久久一区二区三区共| 免费久久精品视频| 日韩欧美精品在线| 日本午夜精品一区二区三区电影 | 久久婷婷成人综合色| 另类人妖一区二区av| 欧美一区二区女人| 久久精品免费观看| 日韩欧美黄色影院| 国产一区二区调教| 国产午夜一区二区三区| 懂色av一区二区三区免费观看| 久久久91精品国产一区二区精品| 国产乱码字幕精品高清av | 亚洲日本在线观看| 色狠狠一区二区三区香蕉| 成人欧美一区二区三区视频网页 | 欧美日韩精品二区第二页| 亚洲电影中文字幕在线观看| 欧美三级电影精品| 日韩精品亚洲专区| 91精品婷婷国产综合久久竹菊| 日韩成人一区二区| 精品国产乱码久久久久久影片| 黑人巨大精品欧美黑白配亚洲| www精品美女久久久tv| 麻豆极品一区二区三区| 久久久久久久免费视频了| 激情综合亚洲精品| 国产精品嫩草久久久久| 91毛片在线观看| 午夜av区久久| 精品国产一区久久| 99久久99久久免费精品蜜臀| 亚洲黄色av一区| 在线观看91精品国产麻豆| 久久av中文字幕片| 亚洲色图第一区| 日韩欧美视频在线| 国产成人精品亚洲日本在线桃色 | 欧美国产1区2区| 91国偷自产一区二区三区观看 | 国产日韩欧美高清在线| av在线综合网| 午夜精品一区在线观看| 久久久久亚洲蜜桃| 在线观看亚洲专区| 国产美女精品一区二区三区| 亚洲乱码国产乱码精品精的特点 | 最新高清无码专区| 制服视频三区第一页精品| 国产精品亚洲人在线观看| 亚洲一卡二卡三卡四卡无卡久久| 精品国内二区三区| 精品视频在线看| 国产成人免费xxxxxxxx| 日韩成人精品视频| 亚洲欧洲精品一区二区精品久久久| 91精品综合久久久久久| 99精品欧美一区二区三区小说| 亚洲一区av在线| 中文字幕av在线一区二区三区| 91.成人天堂一区| 成人av影视在线观看| 日产欧产美韩系列久久99| 亚洲特级片在线| 久久久青草青青国产亚洲免观| 欧美色大人视频| 91影视在线播放| 国产大陆a不卡| 美女一区二区在线观看| 亚洲摸摸操操av| 国产精品久久影院| 欧美成人一区二区三区| 欧美日韩国产三级| 99久久国产综合色|国产精品| 国产原创一区二区| 久久机这里只有精品| 亚洲成人综合网站| 亚洲综合色视频| 亚洲少妇最新在线视频| 日本一区二区三区在线不卡| 欧美精品一区二区三区蜜臀 | 精久久久久久久久久久| 香蕉久久夜色精品国产使用方法| 亚洲女人的天堂| 国产精品久久99| 国产精品午夜久久| 国产精品动漫网站| 国产精品久久久久毛片软件| 久久精品男人的天堂| 久久综合网色—综合色88| 日韩美女天天操| 欧美电视剧免费全集观看| 欧美xxxxx牲另类人与| 日韩欧美国产1| 精品成人佐山爱一区二区| 日韩欧美国产一区二区在线播放| 欧美二区在线观看| 欧美一级日韩不卡播放免费| 欧美一区二区三区不卡| 欧美一区二区三区播放老司机| 9191精品国产综合久久久久久| 欧美日韩国产成人在线91| 精品视频一区 二区 三区| 欧美高清视频一二三区| 欧美丰满少妇xxxxx高潮对白| 欧美一区二区视频免费观看| 91精品国产全国免费观看| 91精品国产全国免费观看| 精品乱人伦一区二区三区| 久久精品在这里| 一区在线中文字幕| 亚洲福利电影网| 久久99久久久久| 国产成人a级片| 一本到不卡免费一区二区| 欧美无砖砖区免费| 精品毛片乱码1区2区3区| 国产精品理论在线观看| 亚洲人成影院在线观看| 亚洲高清视频的网址| 精品一区精品二区高清| 国产麻豆精品视频| 91亚洲国产成人精品一区二三| 欧美视频三区在线播放| 欧美成人综合网站| 亚洲国产精品高清| 洋洋成人永久网站入口| 免费看日韩精品| 成人午夜电影网站| 欧美视频一区在线观看| 精品动漫一区二区三区在线观看| 国产精品免费网站在线观看| 亚洲一区在线观看视频| 国产又黄又大久久| 色婷婷亚洲综合| 欧美va亚洲va| 一区二区三区免费观看| 久久电影网站中文字幕| 成人污污视频在线观看| 欧美日韩一级片在线观看| 久久久一区二区| 亚洲成人一区在线| 国产99久久精品| 欧美一区二区三区影视| 中文字幕一区二区三区av| 石原莉奈在线亚洲三区| bt欧美亚洲午夜电影天堂| 日韩免费高清电影| 一区二区久久久久| 国产精品亚洲专一区二区三区| 欧美嫩在线观看| 日韩一区在线播放| 国产精品原创巨作av| 欧美日韩一区二区在线观看 | 欧美日本高清视频在线观看| 国产精品视频观看|