how to keep same header on starting of next page in pdf

Posted by Santosh Singh on Stack Overflow See other posts from Stack Overflow or by Santosh Singh
Published on 2010-06-18T09:18:21Z Indexed on 2010/06/18 9:23 UTC
Read the original article Hit count: 364

Filed under:
|

Here is My Code.

private void getActionItems(Document document, Chapter chapter, Section section, Paragraph pas) { List drbRefList = null; try { _actionService = new ActionItemImpl(); _aiBean = new ActionItemData(); if (_aiBean != null) { _actionList = new ArrayList(); LOG.info("business passed here is" + _business); _actionList = _actionService.getActionItemsForPDF(_userSSOID, _business, _reviewID, _connection); } LOG.info(" after calling getActionItemsForPDF"); LOG.info("_actionList" + _actionList);

    Table tablesh1 = new Table(1, 1);
    float[] widthsh1 = new float[1];
    widthsh1[0] = ReviewConstants.MAGIC_DOTTWELVE;
    tablesh1.setTableFitsPage(true);
    tablesh1.setPadding(2);
    tablesh1.setSpacing(0);
    tablesh1.setWidth(ReviewConstants.MAGIC_ONEZEROZERO);
    tablesh1.setWidths(widthsh1);
    tablesh1.setBorderColor(Color.WHITE);
    Cell hcell = new Cell(new Paragraph(ReviewConstants.S_ACTIONHEADING, 
               new Font(Font.HELVETICA, fontSize, Font.BOLD, Color.BLUE)));
    hcell.setHeader(true);
    tablesh1.addCell(hcell);
    section.add(tablesh1);
    Table actionTable = null;
    String businessUnit = reviewData.getBusinessUnit();
    float[] widthac = null;
    //Updated for Nuclear Energy Engineering Business Unit Requirement by Naveen
    if(!"Nuclear Energy Engineering".equalsIgnoreCase(businessUnit)){
        actionTable = new Table(ReviewConstants.NINE,ReviewConstants.THREE);
        widthac = new float[ReviewConstants.NINE];
        widthac[0] = ReviewConstants.MAGIC_DOTONE;
        widthac[1] = ReviewConstants.MAGIC_DOTONEZERO;
        widthac[2] = ReviewConstants.MAGIC_DOTTWOZERO;      
        widthac[ReviewConstants.THREE] = ReviewConstants.MAGIC_DOTTWOZERO;  
        widthac[ReviewConstants.FOUR] = ReviewConstants.MAGIC_DOTONEZERO;
        widthac[ReviewConstants.FIVE] = ReviewConstants.MAGIC_DOTONEZERO;
        widthac[ReviewConstants.SIX] = ReviewConstants.MAGIC_DOTONEZERO;
        widthac[ReviewConstants.SEVEN] = ReviewConstants.MAGIC_DOTONEZERO;
        widthac[ReviewConstants.EIGHT] = ReviewConstants.MAGIC_DOTONEZERO;
    }else{
        actionTable = new Table(ReviewConstants.SIX,ReviewConstants.THREE);
        widthac = new float[ReviewConstants.SIX];
        widthac[0] = ReviewConstants.MAGIC_DOTONE;
        widthac[1] = ReviewConstants.MAGIC_THREEZERO;
        widthac[2] = ReviewConstants.MAGIC_THREEZERO;
        widthac[ReviewConstants.THREE] = ReviewConstants.MAGIC_THREEZERO;
        widthac[ReviewConstants.FOUR] = ReviewConstants.MAGIC_DOTONEZERO;
        widthac[ReviewConstants.FIVE] = ReviewConstants.MAGIC_DOTONEZERO;
    }
    actionTable.setTableFitsPage(true);
    actionTable.setPadding(2);
    actionTable.setSpacing(0);
    actionTable.setWidth(ReviewConstants.MAGIC_ONEZEROZERO);
    actionTable.setWidths(widthac);
    actionTable.setBorderWidth(1);
    Cell accell = new Cell(new Paragraph(ReviewConstants.S_ACTIONID,
             new Font(Font.HELVETICA, fontSize, Font.BOLD)));
    accell.setHeader(true);
    actionTable.addCell(accell);

    if(!"Nuclear Energy Engineering".equalsIgnoreCase(businessUnit)){
        accell = new Cell(new Paragraph(ReviewConstants.PDF_RT,
                 new Font(Font.HELVETICA, fontSize, Font.BOLD)));
        accell.setHeader(true);
        actionTable.addCell(accell);
    }
    accell = new Cell(new Paragraph(ReviewConstants.S_REQA,
             new Font(Font.HELVETICA, fontSize, Font.BOLD)));
    accell.setHeader(true);
    actionTable.addCell(accell);        
    accell = new Cell(new Paragraph(ReviewConstants.S_CLOSURE, 
             new Font(Font.HELVETICA, fontSize, Font.BOLD)));
    accell.setHeader(true);
    actionTable.addCell(accell);

    accell = new Cell(new Paragraph(ReviewConstants.S_DISPOSITION, 
             new Font(Font.HELVETICA, fontSize, Font.BOLD)));
    accell.setHeader(true);
    actionTable.addCell(accell);
    //added by santosh on 18 june 
    actionTable.endHeaders();
    document.add(actionTable);

    if(!"Nuclear Energy Engineering".equalsIgnoreCase(businessUnit)){
        accell = new Cell(new Paragraph(ReviewConstants.S_DRB_REFERENCE, new Font(
                    Font.HELVETICA, fontSize, Font.BOLD))); 
        accell.setHeader(true);
        actionTable.addCell(accell);
        accell = new Cell(new Paragraph(ReviewConstants.S_DEADLINE, new Font(
                    Font.HELVETICA, fontSize, Font.BOLD))); 
        accell.setHeader(true);
        actionTable.addCell(accell);
    }
    accell = new Cell(new Paragraph(ReviewConstants.S_OWNER, new Font(
                Font.HELVETICA, fontSize, Font.BOLD))); 
    accell.setHeader(true);
    actionTable.addCell(accell);
    accell = new Cell(new Paragraph(ReviewConstants.S_STATE, new Font(
            Font.HELVETICA, fontSize, Font.BOLD))); 
    accell.setHeader(true);
    actionTable.addCell(accell);
    int acSize = 0;
    if (_actionList != null) {
        acSize = _actionList.size();
    }
    for (int i = 0; i < acSize; i++) { 
    _aiBean = (ActionItemData) _actionList.get(i);      
    Cell adCell = new Cell(new Paragraph(_aiBean.getActionID(), new Font(
                Font.HELVETICA, ReviewConstants.MAGIC_EIGHT))); 
    adCell.setHeader(false);
    actionTable.addCell(adCell);

    if(!"Nuclear Energy Engineering".equalsIgnoreCase(businessUnit)){
        if (_aiBean.getActionItemType().equals("0")) {
        adCell = new Cell(new Paragraph("Normal", 
                new Font(Font.HELVETICA, fontSize))); 
        } else {
            adCell = new Cell(new Paragraph("Critical", 
                    new Font(Font.HELVETICA, fontSize))); 
        }       
        adCell.setHeader(false);
        actionTable.addCell(adCell);
    }
    adCell = new Cell(new Paragraph(_aiBean.getRequiredAction(), 
                    new Font(Font.HELVETICA, fontSize))); 
    adCell.setHeader(false);
    actionTable.addCell(adCell);
    adCell = new Cell(new Paragraph(_aiBean.getClosureCriteria(), 
                    new Font(Font.HELVETICA, fontSize))); 
    adCell.setHeader(false);
    actionTable.addCell(adCell);
    String drbLink = ReviewConstants.EMPTY;
    drbRefList = new ArrayList();
    if (!DRUtils.isEmpty(_aiBean.getState())
                    && ((_aiBean.getState()
                            .equalsIgnoreCase(ReviewConstants.DRAFT_BEGUN_STATE))
                            || (_aiBean.getState()
                                    .equalsIgnoreCase(ReviewConstants.SCOPE_PROPOSED)) || (_aiBean
                            .getState()
                            .equalsIgnoreCase(ReviewConstants.RES_PROPOSED)))) {
                 drbLink = ReviewConstants.EMPTY;
                _aiBean.setDisposition(ReviewConstants.EMPTY);

            } else {                    
                drbRefList = _actionService.getDrbRefForPDF(_aiBean.getActionSeqID(), _connection);
                int drbRefCnt = 0;
                if (drbRefList != null) {
                    drbRefCnt = drbRefList.size();
                    int j = 0;
                    for (j = 0; j < drbRefCnt; j++) {
                        LOG.info("drbRefList.get(j)"
                                + drbRefList.get(j).toString());
                        if (j < (drbRefCnt - 1)) {
                            drbLink += drbRefList.get(j).toString()
                                    + ReviewConstants.COMMA_SPACE;
                        } else {
                            drbLink += drbRefList.get(j).toString();
                        }
                    }
                }
            }
    LOG.info("drbLink" + drbLink);  
    adCell = new Cell(new Paragraph(_aiBean.getDisposition(), 
            new Font(Font.HELVETICA, fontSize))); 
    adCell.setHeader(false);
    actionTable.addCell(adCell);
    //Updated for Nuclear Energy Engineering Business Unit Requirement by Naveen
    if(!"Nuclear Energy Engineering".equalsIgnoreCase(businessUnit)){
        adCell = new Cell(new Paragraph(drbLink, new Font(
                Font.HELVETICA, fontSize)));
        adCell.setHeader(false);
        actionTable.addCell(adCell);        
        adCell = new Cell(new Paragraph(_aiBean.getDeadline(), 
                        new Font(Font.HELVETICA, fontSize))); 
        adCell.setHeader(false);
        actionTable.addCell(adCell);
    }
    adCell = new Cell(new Paragraph(_aiBean.getActionItemOwnerName(), 
                    new Font(Font.HELVETICA, fontSize)));
    adCell.setHeader(false);
    actionTable.addCell(adCell);
    adCell = new Cell(new Paragraph(_aiBean.getState(), 
            new Font(Font.HELVETICA, fontSize)));
    adCell.setHeader(false);
    actionTable.addCell(adCell);
    //added by santosh
    actionTable.endHeaders();
    document.add(actionTable);
    // added by santosh end
    }

    /*Phrase headerPhrase = new Phrase();
    Table headTab = (Table)actionTable.getElement(0, 5);
    headerPhrase.add(headTab);
    HeaderFooter printHeader = new HeaderFooter(headerPhrase,false);
    System.out.println("addHeader");
    document.setHeader(printHeader);
    actionTable.setLastHeaderRow(1);

    actionTable.endHeaders();
    document.add(actionTable);*/
    // added by santosh
    actionTable.endHeaders();
    document.add(actionTable);
    // added by santosh end
     section.add(actionTable);

 }  catch (Exception e) {
    LOG.error("General Exception occured", e);
  }

}

© Stack Overflow or respective owner

Related posts about java

Related posts about itext