src/org/tiefaces/components/websheet/dataobjects/CellMap.java
@Override
	public final Object put(final Object key, final Object value) {
		try {
			CellMapKey mkey = new CellMapKey((String) key);
			if (!mkey.isParseSuccess()) {
				return null;
			}
			Cell poiCell = parent.getCellHelper()
					.getPoiCellWithRowColFromCurrentPage(mkey.getRowIndex(),
							mkey.getColIndex());
			if (poiCell == null) {
				return null;
			}
			String oldValue = CellUtility
					.getCellValueWithoutFormat(poiCell);
			FacesCell facesCell = parent.getCellHelper()
					.getFacesCellWithRowColFromCurrentPage(
							mkey.getRowIndex(), mkey.getColIndex());
			String newValue = assembleNewValue(value, facesCell);
			if (newValue != null && !newValue.equals(oldValue)) {
				CellUtility.setCellValue(poiCell, newValue);
				if (facesCell.isHasSaveAttr()) {
					parent.getCellHelper().saveDataInContext(poiCell,
							newValue);
				}
				// patch to avoid not updated downloaded file
				CellUtility.copyCell(poiCell.getSheet(), poiCell.getRow(), poiCell.getRow(), poiCell.getColumnIndex(),false);
				parent.getCellHelper().reCalc();
			}

			return value;
		} catch (Exception ex) {
			LOG.log(Level.SEVERE,
					"Save cell data error : " + ex.getLocalizedMessage(),
					ex);
		}
		return null;
	}
@Override
	public final Object put(final Object key, final Object value) {
		try {
			CellMapKey mkey = new CellMapKey((String) key);
			if (!mkey.isParseSuccess()) {
				return null;
			}
			Cell poiCell = parent.getCellHelper()
					.getPoiCellWithRowColFromCurrentPage(mkey.getRowIndex(),
							mkey.getColIndex());
			if (poiCell == null) {
				return null;
			}
			String oldValue = CellUtility
					.getCellValueWithoutFormat(poiCell);
			FacesCell facesCell = parent.getCellHelper()
					.getFacesCellWithRowColFromCurrentPage(
							mkey.getRowIndex(), mkey.getColIndex());
			String newValue = assembleNewValue(value, facesCell);
			if (newValue != null && !newValue.equals(oldValue)) {
				CellUtility.setCellValue(poiCell, newValue);
				if (facesCell.isHasSaveAttr()) {
					parent.getCellHelper().saveDataInContext(poiCell,
							newValue);
				}
				// patch to avoid not updated downloaded file
				CellUtility.copyCell(poiCell.getSheet(), poiCell.getRow(), poiCell.getRow(), poiCell.getColumnIndex(),false);
				parent.getCellHelper().reCalc();
			}

			return value;
		} catch (Exception ex) {
			LOG.log(Level.SEVERE,
					"Save cell data error : " + ex.getLocalizedMessage(),
					ex);
		}
		return null;
	}
@ Override public final Object put ( final Object key , final Object value ) { try { CellMapKey mkey = new CellMapKey ( ( String ) key ) ; if ( ! mkey . isParseSuccess ( ) ) { return null ; } Cell poiCell = parent . getCellHelper ( ) . getPoiCellWithRowColFromCurrentPage ( mkey . getRowIndex ( ) , mkey . getColIndex ( ) ) ; if ( poiCell == null ) { return null ; } String oldValue = CellUtility . getCellValueWithoutFormat ( poiCell ) ; FacesCell facesCell = parent . getCellHelper ( ) . getFacesCellWithRowColFromCurrentPage ( mkey . getRowIndex ( ) , mkey . getColIndex ( ) ) ; String newValue = assembleNewValue ( value , facesCell ) ; if ( newValue != null && ! newValue . equals ( oldValue ) ) { CellUtility . setCellValue ( poiCell , newValue ) ; if ( facesCell . isHasSaveAttr ( ) ) { parent . getCellHelper ( ) . saveDataInContext ( poiCell , newValue ) ; } // patch to avoid not updated downloaded file
 CellUtility . copyCell ( poiCell . getSheet ( ) , poiCell . getRow ( ) , poiCell . getRow ( ) , poiCell . getColumnIndex ( ) , false ) ; parent . getCellHelper ( ) . reCalc ( ) ; } return value ; } catch ( Exception ex ) { LOG . log ( Level . SEVERE , "Save cell data error : " + ex . getLocalizedMessage ( ) , ex ) ; } return null ; }
/*
(non-Javadoc)

@see java.util.Map#put(java.lang.Object, java.lang.Object)
/ * ( non - Javadoc )