2010-12-09 19 views
1

J'ai une étiquette personnalisée qui étend le InputTag de Spring pour afficher les nombres au format ",###.0". J'ai enregistré un PropertyEditor personnalisé pour la classe Double pour gérer le formatage. Lorsqu'un formulaire est soumis et que la validation échoue, toutes les valeurs non valides doivent être ré-affichées telles quelles, sans formatage, afin que l'utilisateur puisse voir l'erreur qu'il a commise. Comment puis-je informer le tag personnalisé du résultat de la validation afin qu'il ne fasse aucun formatage? J'utilise Spring MVC 3.Spring MVC - Formatage sélectif

Merci.

Répondre

1

substituer la méthode de getPropertyEditor()AbstractDataBoundFormElementTag, et retourner null au lieu de PropertyEditor exemple (si la ValueFormatter ne passera pas la valeur d'objet à PropertyEditor pour but de mise en page).

public class CustomInputTag extends InputTag { 
@Override 
protected PropertyEditor getPropertyEditor() throws JspException { 
    if(getBindStatus().getErrors().hasErrors()) { 
     return null; 
    } 
    return super.getPropertyEditor(); 
    } 
}