public void handleField()

in reference/src/main/java/org/apache/sling/cms/reference/forms/impl/fields/SelectionHandler.java [68:99]


    public void handleField(SlingHttpServletRequest request, Resource fieldResource, Map<String, Object> formData)
            throws FormException {
        log.trace("handleField");
        String name = FieldHandler.getName(fieldResource);

        if (isMultiple(fieldResource)) {
            String[] value = stripBlank(request.getParameterValues(name));
            if (value.length == 0) {
                if (FieldHandler.isRequired(fieldResource)) {
                    throw new FormException("Field " + name + " not set and is required");
                } else {
                    log.debug("Ignoring unset value: {}", name);
                }
            } else {
                log.debug("Setting value for: {}", name);
                formData.put(name, value);
            }
        } else {
            String value = request.getParameter(name);
            if (StringUtils.isBlank(value)) {
                if (FieldHandler.isRequired(fieldResource)) {
                    throw new FormException("Field " + name + " not set and is required");
                } else {
                    log.debug("Ignoring unset value: {}", name);
                }
            } else {
                log.debug("Setting value for: {}", name);
                formData.put(name, value);
            }
        }

    }