protected void fieldMap() {
		fieldNames = fieldStr.split("" + FIELD_NAME_SEPARATOR);
		fieldByName = new HashMap<String, Field>();

		for (String fname : fieldNames) {
			try {
				if (!fname.isEmpty()) {
					Field field = clazz.getField(fname);
					fieldByName.put(fname, field);
				}
			} catch (NoSuchFieldException e) {
				throw new RuntimeException("Error: Field '" + fname + "' not found for class '" + clazz.getCanonicalName() + "' (may be the fields is not public?)");
			}
		}
	}