Examples of JspFragment


Examples of javax.servlet.jsp.tagext.JspFragment

     * @throws IOException If something goes wrong.
     * @throws JspException If something goes wrong.
     */
    @Test
    public void testEvaluateWriter() throws JspException, IOException {
        JspFragment body = createMock(JspFragment.class);
        PageContext pageContext = createMock(PageContext.class);
        JspWriter writer = createMock(JspWriter.class);

        expect(pageContext.getOut()).andReturn(null);
        body.invoke(writer);

        replay(body, pageContext, writer);
        JspModelBody modelBody = new JspModelBody(body, pageContext);
        modelBody.evaluate(writer);
        verify(body, pageContext, writer);
View Full Code Here

Examples of javax.servlet.jsp.tagext.JspFragment

     * @throws JspException If something goes wrong.
     */
    @Test(expected = IOException.class)
    public void testEvaluateWriterException() throws JspException, IOException {
        PageContext pageContext = createMock(PageContext.class);
        JspFragment body = createMock(JspFragment.class);
        JspWriter writer = createMock(JspWriter.class);

        expect(pageContext.getOut()).andReturn(null);
        body.invoke(writer);
        expectLastCall().andThrow(new JspException());

        replay(body, pageContext, writer);
        try {
            JspModelBody modelBody = new JspModelBody(body, pageContext);
View Full Code Here

Examples of javax.servlet.jsp.tagext.JspFragment

        DataGridTagModel dgm = DataGridUtil.getDataGridTagModel(jspContext);
        if(dgm == null)
            throw new JspException(Bundle.getErrorString("DataGridTags_MissingDataGridModel"));

        if(dgm.getRenderState() == DataGridTagModel.RENDER_STATE_FOOTER) {
            JspFragment fragment = getJspBody();
            if(fragment != null) {

                StringWriter sw = new StringWriter();

                TableRenderer tableRenderer = dgm.getTableRenderer();
                assert tableRenderer != null;

                StyleModel styleModel = dgm.getStyleModel();
                assert styleModel != null;

                AbstractRenderAppender appender = new WriteRenderAppender(jspContext);

                if(dgm.isRenderRowGroups()) {
                    if(_tfootTag.styleClass == null)
                        _tfootTag.styleClass = styleModel.getTableFootClass();
                    tableRenderer.openTableFoot(_tfootTag, appender);
                }

                TrTag.State trState = null;
                if(_renderRow) {
                    trState = new TrTag.State();
                    trState.styleClass = styleModel.getFooterRowClass();
                    tableRenderer.openFooterRow(trState, appender);
                }

                fragment.invoke(sw);
                appender.append(sw.toString());

                if(_renderRow) {
                    assert trState != null;
                    tableRenderer.closeFooterRow(appender);
View Full Code Here

Examples of javax.servlet.jsp.tagext.JspFragment

                trState = new TrTag.State();
                trState.styleClass = styleModel.getHeaderRowClass();
                tableRenderer.openHeaderRow(trState, appender);
            }

            JspFragment fragment = getJspBody();
            if(fragment != null) {
                StringWriter sw = new StringWriter();
                fragment.invoke(sw);
                appender.append(sw.toString());
            }

            if(_renderRow)
                tableRenderer.closeHeaderRow(appender);
View Full Code Here

Examples of javax.servlet.jsp.tagext.JspFragment

        _dataGridTagModel.setStyleModel(styleModel);
        _dataGridTagModel.setTableRenderer(tableRenderer);
        _dataGridTagModel.setResourceProvider(resourceProvider);
        _dataGridTagModel.setRenderRowGroups(_renderRowGroups);

        JspFragment fragment = getJspBody();
        if(fragment != null) {
            String javascript = null;
            /* render any JavaScript needed to support framework features */
            if (_tableState.id != null) {
                javascript = renderNameAndId(request, _tableState, null);
            }

            boolean addedDataAccessProvider = false;
            try {
                InternalStringBuilder builder = new InternalStringBuilder(2048);
                AbstractRenderAppender appender = new StringBuilderRenderAppender(builder);

                /* todo: perf -- this doesn't need to happen when the data set is empty */
                DataAccessProviderStack.addDataAccessProvider(this, getJspContext());
                DataGridUtil.putDataGridTagModel(getJspContext(), _dataGridTagModel);
                addedDataAccessProvider = true;

                StringWriter sw = new StringWriter();
                /*
                   allow sub-tags to do work during START before rendering
                   this makes it possible to have tags out of order and to
                   have rendering work correctly
                 */
                /* todo: perf -- should you be able to turn this off for perf? */
                fragment.invoke(sw);

                /* todo: this needs to move into the DataGridTagModel */
                PagerModel pm = _dataGridTagModel.getState().getPagerModel();
                _dataGridTagModel.getDataSet().createWindow(pm.getRow(), pm.getPageSize());

                /* now that the model objects have been initialized, it's time to start rendering */
                _dataGridTagModel.changeRenderState(DataGridTagModel.RENDER_STATE_START);

                if(!_dataGridTagModel.isDisableDefaultPagerRendering())
                    _dataGridTagModel.renderPager(appender);

                _tableState.styleClass = styleModel.getTableClass();
                tableRenderer.openTable(_tableState, appender);

                /* render the caption */
                _dataGridTagModel.changeRenderState(DataGridTagModel.RENDER_STATE_CAPTION);
                sw = new StringWriter();
                fragment.invoke(sw);
                String caption = sw.toString();
                if(caption != null)
                    appender.append(caption);

                /* render the header */
                _dataGridTagModel.changeRenderState(DataGridTagModel.RENDER_STATE_HEADER);
                sw = new StringWriter();
                fragment.invoke(sw);
                String header = sw.toString();
                if(header != null)
                    appender.append(header);

                /* intermediate storage for the body and footer content
                   these are required by the HTML spec:
                       http://www.w3.org/TR/REC-html40/struct/tables.html#h-11.2.3
                   as when the row groups are used, they must be re-ordered so that
                   <tfoot> preceeds <tbody>
                 */

                String tbody = null;
                String tfoot = null;

                /* render the body */
                _dataGridTagModel.changeRenderState(DataGridTagModel.RENDER_STATE_GRID);
                sw = new StringWriter();
                fragment.invoke(sw);
                tbody = sw.toString();

                /* render the footer */
                _dataGridTagModel.changeRenderState(DataGridTagModel.RENDER_STATE_FOOTER);
                sw = new StringWriter();
                fragment.invoke(sw);
                String footer = sw.toString();
                String trimmed = footer.trim();
                if(footer != null && !trimmed.trim().equals(""))
                    tfoot = footer;

View Full Code Here

Examples of javax.servlet.jsp.tagext.JspFragment

        DataGridTagModel dgm = DataGridUtil.getDataGridTagModel(jspContext);
        if(dgm == null)
            throw new JspException(Bundle.getErrorString("DataGridTags_MissingDataGridModel"));

        if(dgm.getRenderState() == DataGridTagModel.RENDER_STATE_CAPTION) {
            JspFragment fragment = getJspBody();
            if(fragment != null) {
                String captionScript = null;
                if(_captionTag.id != null) {
                    HttpServletRequest request = JspUtil.getRequest(getJspContext());
                    captionScript = renderNameAndId(request, _captionTag, null);
                }

                StringWriter sw = new StringWriter();
                TableRenderer tableRenderer = dgm.getTableRenderer();
                StyleModel stylePolicy = dgm.getStyleModel();
                AbstractRenderAppender appender = new WriteRenderAppender(jspContext);

                if(_captionTag.styleClass == null)
                    _captionTag.styleClass = stylePolicy.getCaptionClass();

                tableRenderer.openCaption(_captionTag, appender);

                fragment.invoke(sw);
                appender.append(sw.toString());

                tableRenderer.closeCaption(appender);

                if(captionScript != null)
View Full Code Here

Examples of javax.servlet.jsp.tagext.JspFragment

        else
            styleClasses.add(_cellState.styleClass);

        _cellState.styleClass = dataGridModel.getStyleModel().buildStyleClassValue(styleClasses);

        JspFragment fragment = getJspBody();
        StringWriter sw = new StringWriter();
        String jspFragmentOutput = null;
        if(fragment != null) {
            fragment.invoke(sw);
            jspFragmentOutput = sw.toString();
        }

        tableRenderer.openHeaderCell(_cellState, appender);
        renderHeaderCellContents(appender, jspFragmentOutput);
View Full Code Here

Examples of javax.servlet.jsp.tagext.JspFragment

        /*
           note, this runs in order to allow any nested tags to do their work. 
           this provides support for formatters, parameters, etc
         */
        JspFragment fragment = getJspBody();
        StringWriter sw = new StringWriter();
        if(fragment != null)
            fragment.invoke(sw);

        tableRenderer.openTableCell(_cellState, appender);
        renderDataCellContents(appender, sw.toString());
        tableRenderer.closeTableCell(appender);

View Full Code Here

Examples of javax.servlet.jsp.tagext.JspFragment

            TableRenderer tableRenderer = dataGridModel.getTableRenderer();
            assert tableRenderer != null;

            InternalStringBuilder content = new InternalStringBuilder();
            AbstractRenderAppender appender = new StringBuilderRenderAppender(content);
            JspFragment fragment = getJspBody();

            if(dataGridModel.isRenderRowGroups())
                tableRenderer.openTableBody(_tbodyTag, appender);

            HttpServletRequest request = JspUtil.getRequest(getJspContext());
            while(dataGridModel.hasNextDataItem()) {

                StringWriter sw = new StringWriter();

                /* first things first -- advance to the next data item */
                dataGridModel.nextDataItem();

                fragment.invoke(sw);

                String trScript = null;
                if(_renderRow) {
                    TrTag.State trState = new TrTag.State();
                    int index = dataGridModel.getCurrentIndex();
View Full Code Here

Examples of javax.servlet.jsp.tagext.JspFragment

        if(!(renderState == DataGridTagModel.RENDER_STATE_HEADER ||
           renderState != DataGridTagModel.RENDER_STATE_GRID ||
           renderState != DataGridTagModel.RENDER_STATE_FOOTER))
            return;

        JspFragment fragment = getJspBody();

        StyleModel styleModel = dataGridModel.getStyleModel();
        assert styleModel != null;

        TableRenderer tableRenderer = dataGridModel.getTableRenderer();
        assert tableRenderer != null;

        HttpServletRequest request = JspUtil.getRequest(getJspContext());
        InternalStringBuilder content = new InternalStringBuilder();
        AbstractRenderAppender appender = new StringBuilderRenderAppender(content);

        if(_trState.styleClass == null) {
            if(renderState == DataGridTagModel.RENDER_STATE_GRID) {
                int index = dataGridModel.getCurrentIndex();
                if(index % 2 == 0)
                    _trState.styleClass = styleModel.getRowClass();
                else _trState.styleClass = styleModel.getAltRowClass();
            }
            else if(renderState == DataGridTagModel.RENDER_STATE_HEADER)
                _trState.styleClass = styleModel.getHeaderRowClass();
            else if(renderState == DataGridTagModel.RENDER_STATE_FOOTER)
                _trState.styleClass = styleModel.getFooterRowClass();
            else assert false : "Attempting to apply style information during an invalid render state";
        }

        String trScript = null;
        if(_trState.id != null)
            trScript = renderNameAndId(request, _trState, null);

        tableRenderer.openTableRow(_trState, appender);

        StringWriter sw = new StringWriter();
        if(fragment != null)
            fragment.invoke(sw);
        appender.append(sw.toString());

        tableRenderer.closeTableRow(appender);

        if(trScript != null)
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.