class Handler {

	public Object invoke(Map<String, Object> parameters) throws Exception {
		Object[] params = new Object[parameterOrder.size()];
		for (int x = 0; x < parameterOrder.size(); ++x) {
			String parameterName = parameterOrder.get(x);
			params[x] = parameters.get(parameterName);
		}
		try {
			return method.invoke(webService, params);
		} catch (InvocationTargetException e) {
			throw Throwables.propagate(e.getCause());
		}
	}

	public  Handler(Object webService, Method method);

}