lundi 13 avril 2015

spring: hook between data binding and validation

I have a Roo generated application and use validation, spring security with a custom PermissionEvaluator and the generated web controllers. My entity has a field like this:



@NotNull
private Date creationDate;


This field is set automatically inside the controller's create method when saving the entity and is not included in the form (render="false").



@RequestMapping(method = RequestMethod.POST, produces = "text/html")
@PreAuthorize("hasPermission(#myEntity, 'create')")
public String create(@Valid MyEntity myEntity,
BindingResult bindingResult, Model uiModel,
HttpServletRequest httpServletRequest) {
// ... check binding result
myEntity.setCreationDate(new Date());
myEntity.persist();
// ...
}


The problem is, that validation always fails because it runs before the field is set. The PermissionEvaluator (called by @PreAuthorize) is also missing the value. How can I place my code somewhere between data binding and validation so that the entity is complete right from the beginning?


Aucun commentaire:

Enregistrer un commentaire