Lister les valeurs d'une contrainte

cancel
Showing results for 
Search instead for 
Did you mean: 
xavier_rouviere
Member II

Lister les valeurs d'une contrainte

Pour avoir une combo dans un webscript (java backed bean).
Récupération de la liste des valeurs d'une contrainte :
->utilisation du DictionaryService
->récupération de la définition puis de la contrainte.
-> Cast si type "LIST"

   public static List<String> getList(DictionaryService dicoService,
         QName constraintQName) {
      List<String> res= new ArrayList<String>();
      ConstraintDefinition constDef = dicoService.getConstraint(constraintQName);      
      Constraint constraint = constDef.getConstraint();
      if (constraint.getType().equals("LIST")) {
         ListOfValuesConstraint lovc = (ListOfValuesConstraint)constraint;
         res = lovc.getAllowedValues();
      }      
      return res;
   }
Mettre dans le "model" i.e la table clé/valeur d'un org.springframework.extensions.webscripts.DeclarativeWebScript;

model.put("checkCivilite", AlfrescoUtils.getList(dicoService, MyContentModel.CHECK_CIVILITE));
Utilisation dans un FTL avec une macro

<@combo listVal=checkCivilite comboName="civilite" />
La macro

<#macro combo listVal comboName>
   <select name='${comboName}'>
   <#list listVal as key>
      <option value='${key}' >${key}</option>
   </#list>
   </select>
</#macro>
1 Reply
rguinot
Customer

Re: Lister les valeurs d'une contrainte

voir aussi les contraintes de type "REGISTERED". permettent entre autres d'avoir une liste de valeurs non connues avant le bootstrap.

Il y a également un exemple de code pour avoir une liste de valeurs provenant d'une requete lucene.