fluid-ws-java-client/src/main/java/com/fluidbpm/ws/client/v1/ABaseClientWS.java
protected JSONObject executeForm(
			HttpMethod httpMethodParam,
			List<HeaderNameValue> headerNameValuesParam,
			boolean checkConnectionValidParam,
			List<FormNameValue> formNameValuesParam,
			ContentType contentTypeParam,
			String postfixUrlParam
	) {
		//Validate Form Field and values...
		if(formNameValuesParam == null || formNameValuesParam.isEmpty()) {
			throw new FluidClientException("No 'Name and Value' body to post.",
					FluidClientException.ErrorCode.FIELD_VALIDATE);
		}

		StringBuilder strBuilder = new StringBuilder();

		for(FormNameValue nameValue : formNameValuesParam) {
			if(nameValue.getName() == null || nameValue.getName().trim().isEmpty()) {
				continue;
			}

			if(nameValue.getValue() == null) {
				continue;
			}

			strBuilder.append(nameValue.getName());
			strBuilder.append(EQUALS);
			strBuilder.append(nameValue.getValue());
			strBuilder.append(AMP);
		}

		String bodyJsonString = strBuilder.toString();
		bodyJsonString = bodyJsonString.substring(0, bodyJsonString.length() - 1);

		return this.executeString(
				httpMethodParam,
				headerNameValuesParam,
				checkConnectionValidParam,
				bodyJsonString, contentTypeParam, postfixUrlParam);
	}
protected JSONObject executeForm(
			HttpMethod httpMethodParam,
			List<HeaderNameValue> headerNameValuesParam,
			boolean checkConnectionValidParam,
			List<FormNameValue> formNameValuesParam,
			ContentType contentTypeParam,
			String postfixUrlParam
	) {
		//Validate Form Field and values...
		if(formNameValuesParam == null || formNameValuesParam.isEmpty()) {
			throw new FluidClientException("No 'Name and Value' body to post.",
					FluidClientException.ErrorCode.FIELD_VALIDATE);
		}

		StringBuilder strBuilder = new StringBuilder();

		for(FormNameValue nameValue : formNameValuesParam) {
			if(nameValue.getName() == null || nameValue.getName().trim().isEmpty()) {
				continue;
			}

			if(nameValue.getValue() == null) {
				continue;
			}

			strBuilder.append(nameValue.getName());
			strBuilder.append(EQUALS);
			strBuilder.append(nameValue.getValue());
			strBuilder.append(AMP);
		}

		String bodyJsonString = strBuilder.toString();
		bodyJsonString = bodyJsonString.substring(0, bodyJsonString.length() - 1);

		return this.executeString(
				httpMethodParam,
				headerNameValuesParam,
				checkConnectionValidParam,
				bodyJsonString, contentTypeParam, postfixUrlParam);
	}
Submit a HTML Form based HTTP request body with JSON as a response.

@param httpMethodParam The HTTP method to use.
@param headerNameValuesParam The additional HTTP headers.
@param checkConnectionValidParam Check if connection to base endpoint is valid.
@param formNameValuesParam The Form name and value pairs.
@param contentTypeParam The Mime / Content type to submit as.
@param postfixUrlParam URL mapping after the Base endpoint.

@return Return body as JSON.

@see HttpMethod
@see JSONObject
@see ContentType
@see ABaseFluidJSONObject