public String getURL(List<String> parameters) throws WebServiceException {
		if (null == endpoint || endpoint.isEmpty()) {
			throw new WebServiceException("Endpoint must not be empty");
		}

		if (null != parameters && parameters.size() % 2 > 0) {
			throw new WebServiceException("The number of parameters must be even");
		}

		StringBuffer url = new StringBuffer();
		url.append(endpoint);
		if (null != parameters && parameters.size() > 0) {
			url.append("?");
			for (int i = 0; i < parameters.size(); i += 2) {
				if (i > 0) {
					url.append("&");
				}
				url.append(parameters.get(i));
				url.append("=");
				url.append(parameters.get(i + 1));
			}
		}

		return Converters.URL.encode(url.toString());
	}