It should be passed as an additional request parameter (this is an http restriction). You can add the following field to your form, for example:
<input type="hidden" name="checkboxes" value="${myCheckboxesNames.join(',')}"/>
or do the same using JavaScript, as client-side names are dynamic.
By the way, you can also check all request parameters,
params.each { name, value ->
therefore, if you use a special prefix / suffix for these flag names, this will be:
params.entrySet().findAll { it.key.startsWith(prefix) }.each { println "Checkbox $it.key = $it.value" }
source share