src/org/tiefaces/components/websheet/service/WebSheetLoader.java
public final void addRepeatRow(final int rowIndex) {

		try {
			SheetConfiguration sheetConfig = parent.getSheetConfigMap().get(parent.getCurrent().getCurrentTabName());
			Sheet sheet = parent.getWb().getSheet(sheetConfig.getSheetName());
			ConfigBuildRef configBuildRef = new ConfigBuildRef(parent.getWbWrapper(), sheet, parent.getExpEngine(),
					parent.getCellHelper(), sheetConfig.getCachedCells(), parent.getCellAttributesMap(),
					sheetConfig.getFinalCommentMap());
			// set add mode
			configBuildRef.setAddMode(true);
			configBuildRef.setCollectionObjNameMap(sheetConfig.getCollectionObjNameMap());
			configBuildRef.setCommandIndexMap(sheetConfig.getCommandIndexMap());
			configBuildRef.setShiftMap(sheetConfig.getShiftMap());
			configBuildRef.setWatchList(sheetConfig.getWatchList());
			int length = CommandUtility.addRow(configBuildRef, rowIndex,
					parent.getSerialDataContext().getDataContext());
			refreshBodyRowsInRange(configBuildRef.getInsertPosition(), length, sheet, sheetConfig);
			parent.getCellHelper().reCalc();
		} catch (AddRowException e) {
			FacesContext.getCurrentInstance().addMessage(null,
					new FacesMessage(FacesMessage.SEVERITY_ERROR, "Add Row Error", e.getMessage()));
			LOG.log(Level.SEVERE, "Add row error = " + e.getLocalizedMessage(), e);

		} catch (Exception ex) {
			LOG.log(Level.SEVERE, "Add row error = " + ex.getLocalizedMessage(), ex);

		}

	}
public final void addRepeatRow(final int rowIndex) {

		try {
			SheetConfiguration sheetConfig = parent.getSheetConfigMap().get(parent.getCurrent().getCurrentTabName());
			Sheet sheet = parent.getWb().getSheet(sheetConfig.getSheetName());
			ConfigBuildRef configBuildRef = new ConfigBuildRef(parent.getWbWrapper(), sheet, parent.getExpEngine(),
					parent.getCellHelper(), sheetConfig.getCachedCells(), parent.getCellAttributesMap(),
					sheetConfig.getFinalCommentMap());
			// set add mode
			configBuildRef.setAddMode(true);
			configBuildRef.setCollectionObjNameMap(sheetConfig.getCollectionObjNameMap());
			configBuildRef.setCommandIndexMap(sheetConfig.getCommandIndexMap());
			configBuildRef.setShiftMap(sheetConfig.getShiftMap());
			configBuildRef.setWatchList(sheetConfig.getWatchList());
			int length = CommandUtility.addRow(configBuildRef, rowIndex,
					parent.getSerialDataContext().getDataContext());
			refreshBodyRowsInRange(configBuildRef.getInsertPosition(), length, sheet, sheetConfig);
			parent.getCellHelper().reCalc();
		} catch (AddRowException e) {
			FacesContext.getCurrentInstance().addMessage(null,
					new FacesMessage(FacesMessage.SEVERITY_ERROR, "Add Row Error", e.getMessage()));
			LOG.log(Level.SEVERE, "Add row error = " + e.getLocalizedMessage(), e);

		} catch (Exception ex) {
			LOG.log(Level.SEVERE, "Add row error = " + ex.getLocalizedMessage(), ex);

		}

	}
Adds the repeat row.

@param rowIndex
the row index