Custom - doVarCheck
Page
- dernière modification par Thomas Bazin le 2014/10/06 16:58
Cette méthode vérifie une seule variable. Elle est appelée pour chaque variable avant la méthode de vérification
de l’entité doCheck.
Java
Si la variable n’est pas valide, vous pouvez :
• Ajouter un message d’erreur dans le contexte de la requête et retourner true (dans ce cas, les autres
variables sont également validées).
• Lancer une FunctionalException avec un message à afficher à l’utilisateur (dans ce cas, la validation est
stoppée).
L’exemple suivant montre comment vérifier la taille d’une image téléversée.
@Override
public boolean doVarCheck(LibAlbum bean, String varName, Action action, RequestContext ctx) throws
FunctionalException {
if (Vars.COVER.equals(varName) && (action.is(Actions.ACTION_0) || action.is(Actions.ACTION_2))
&& bean.getCoverContainer() != null && bean.getCoverContainer().getContent() != null) {
int size = bean.getCoverContainer().getContent().length;
if (size > 16384) {
ctx.getMessages().add(message(ctx, Severity.ERROR, ”album.cover.error.size”, (size / 1024)));
return true;
}
}
return super.doVarCheck(bean, varName, action, ctx);
}
protected Message message(RequestContext ctx, Severity severity, String key, Object... params) {
return new Message(MessageUtils.getInstance(ctx).getCustom(key, params), severity);
}