2016-09-01 2 views
1

Ich versuche, benutzerdefinierten Datums-Editor in MVC WebDataBinder im Frühjahr zu registrieren, um Feder meinen benutzerdefinierten Datumsformat (genauer gesagt, es ist ISO-Format) zu analysieren. Ich bin damit durch die Implementierung von CustomWebBindingInitializer gelungen.WebDataBinder benutzerdefinierte Datumseditor funktioniert nicht

public static class CustomWebBindingInitializer implements WebBindingInitializer { 

    @Override 
    public void initBinder(WebDataBinder webDataBinder, WebRequest webRequest) { 
     CustomDateEditor dateEditor = new CustomDateEditor(new ISODateFormat(), true); 
     webDataBinder.registerCustomEditor(Date.class, dateEditor); 
    } 
} 

Frühling ist mein Herausgeber und parst Datum erfolgreich im Einsatz, aber nontheless Datumsfeld nicht gebunden bekommt und ich für den Antrag folgenden Fehler:

"org.springframework.validation.BindException",,"defaultMessage":"Failed to convert property value of type [java.lang.String] to required type [java.util.Date] for property 'from'; nested exception is java.lang.IllegalArgumentException: Could not parse date: Unparseable date: \"2016-08-01T10:35:04.126Z\"" 

Was bemerkenswert ist: wenn ich Standardformat des Frühlings MM/DD/YYYY mit mein kundenspezifischer Herausgeber Ich bekomme den gleichen Fehler, der bedeutet, dass Frühling meinen Herausgeber anstelle von Standard benutzt.

Wenn ich default Spring Parser mit Format MM/DD/YYYY alles funktioniert und Datum wird gebunden, was natürlich ist offensichtlich.

Jeder hatte das gleiche Problem?

Antwort

1

-Format registerCustomEditor und versuchen:

SimpleDateFormat format = new SimpleDateFormat("Required format"); 
webDataBinder.registerCustomEditor(Date.class, dateEditor, new CustomDateEditor(format, true)); 
Verwandte Themen