code: @Override
  	public Object getValueAt(final int row, final int col) {
  		Object data = getBean();
  		Object bean = null;
  
  		if (data instanceof Object[]) {
  			bean = ((Object[]) data)[row];
  		} else if (data instanceof List) {
  			bean = ((List) data).get(row);
  		}
  
  		String property = properties[col];
  
  		if (bean != null) {
  			if (".".equals(property)) {
  				return bean;
  			} else {
  				try {
  					return PropertyUtils.getProperty(bean, property);
  				} catch (Exception e) {
  					LOG.error("Failed to read bean property " + property + " from " + bean, e);
  				}
  			}
  		}
  
  		return null;
  	}
docs: {@inheritDoc}