Non ça ne parait pas normal, en back il ne doit pas y avoir de différence en fonction de l’affichage front.
on va essayer de reproduire en 5.2 avec un ENUM multiple simple.
Sur la démo, j’ai ajouté “grp_type” dans l’action qui incrémente les stock d’un produit (c’est un enum multiple des types de groupe de droits). On a bien les valeurs cochées avec getValue ou getCodes.
ObjectField type = action.getConfirmField(getGrant().getLang(), "grp_type");
AppLog.info("type value = " + type.getValue(), null);
AppLog.info("type codes = " + String.join(",", type.getCodes()), null);
Et si on replace la liste dynamiquement l’enum dans l’initAction :
Si on coche b+c+d, on obtient bien “B;C;D” et “B,C,D” dans les logs / testé avec rendering checkbox horizontal et vertical.
Quelques idées :
il manque le “clear” pour faire un annule et remplace à chaque fois
les valeurs cochées par défaut sont issues de la valeur par défaut du champ, car le formulaire d’une action est comme une création, il faut utiliser setDefaultValue pour proposer une valeur (setValue n’est pas utilisé).