code: public boolean export() throws QueryException, NoDataFoundException {
  
  		start = true;
  		
          testForData();        
          
  		if (needsFirstCrossing() && !(this instanceof FirstCrossingExporter)) {			
  			FirstCrossingExporter fe = new FirstCrossingExporter(bean);
  			fe.export();
  			// get template values from FirstCrossing
  			templatesValues = fe.getTemplatesValues();
  			groupTemplateKeys = fe.getGroupTemplateKeys();			
  		} 
  
          initExport();
  
          printHeaderBand();
          if (!printContentBands()) {
              return false;
          }
          printFooterBand();
  
          finishExport();
          
          if ((bean.getResult() != null) && (!(this instanceof FirstCrossingExporter)) )  {
          	bean.getResult().close();
          }       
          
          if (this instanceof FirstCrossingExporter) {
          	// after FirstCrossing go to the beginning of the result set
          	try {
  				bean.getResult().getResultSet().beforeFirst();
  			} catch (SQLException ex) {
  				LOG.error(ex.getMessage(), ex);
  			}
          }               
  
          return true;
      }
docs: header page band and footer page band are written in PDF and RTF exporters