private JsonParser moveToPath(String json, String path) {
		try {
			JsonFactory f = new MappingJsonFactory(createMapper());
			JsonParser jp = f.createJsonParser(json);
			
			jp.nextToken(); //go to start_object
			
			if (path == null) return jp;
			String pathParts[];
			
        	if (path.contains(".")) {
	        	pathParts = path.split("\\.");
        	} else {
        		pathParts = new String[]{path};
        	}
        	for (String pathPart : pathParts) {
        		boolean foundPart = findField(jp, pathPart); 
        		if (!foundPart) throw new DeserializationException("Cannot find path " + path);
        	}

        	jp.nextToken(); //move into object or array
        	return jp;
		} catch (Exception e) {
			throw new DeserializationException(e);
		}
	}