private void parseArguments(String url,Processor processor) throws IllegalArgumentException{
		//can be convert from string?
		Class<?>[] parameterTypes = processor.getMethod().getParameterTypes();
		for(Class<?> parameterType : parameterTypes){
			if(!ConverterFactory.canConvert(parameterType)){
				throw new IllegalArgumentException("action method's parameter type " + parameterType + " can not be converted!");
			}
		}
		String actionUrl = processor.getMethod().getAnnotation(Action.class).value();
		int argumentsCount = 0;
		for(int i=0; i < actionUrl.length(); i++){
			if(actionUrl.charAt(i) == '$')
				argumentsCount++;
		}
		Object[] args = new Object[argumentsCount];
		String[] urlSegments = url.split("\\/");
		
		for(int j=0, i = urlSegments.length - argumentsCount; i < urlSegments.length; i++,j++){
			args[j] = ConverterFactory.getConverter(parameterTypes[j]).convert(urlSegments[i]);
		}
		processor.setArguments(args);
	}