private void testValues() throws IllegalArgumentException, IllegalAccessException, MalformedLayarRequestException {
		if(layarRequest.version == null)
			throw new MalformedLayarRequestException("version is mandatory field!");
		if(!ServiceConst.LAYAR_VERSIONS.containsKey(layarRequest.version))
			throw new MalformedLayarRequestException("invalid version value("+layarRequest.version+")");
			
		Field[] fields = LayarGetPOIsRequest.class.getFields();
		for (Field f : fields) {
			String fName = f.getName();
			LayarRequired lreq = f.getAnnotation(LayarRequired.class);
			LayarApiVersion lver = f.getAnnotation(LayarApiVersion.class);
			
			if(lver!=null && ServiceConst.LAYAR_VERSIONS.get(lver.value())>ServiceConst.LAYAR_VERSIONS.get(layarRequest.version))
				continue;
			
			if(lreq != null && f.get(layarRequest)==null) {
				throw new MalformedLayarRequestException(fName + " is mandatory field!");
			}
		}
	}