spring-cloud-Client vortäuschen und @RequestParam mit Datum geben

Dieser Zeit arbeitete ich mit Deklarativen REST-Client, Vortäuschen, in einigen Spring-Boot-App.

Was ich erreichen wollte, ist der Aufruf einer meiner REST-API ' s, die wie folgt aussieht:

@RequestMapping(value = "/customerslastvisit", method = RequestMethod.GET)
    public ResponseEntity customersLastVisit(
            @RequestParam(value = "from", required = true) @DateTimeFormat(iso = DateTimeFormat.ISO.DATE) Date from,
            @RequestParam(value = "to", required = true) @DateTimeFormat(iso = DateTimeFormat.ISO.DATE) Date to) {

Wie Sie sehen können, die API akzeptiert Anrufe mit von-und bis-Datum params, formatiert wie (yyyy-MM-dd)

Fordern, dass die API, die ich vorbereitet habe folgende Stück @FeignClient:

@FeignClient("MIIA-A")
public interface InboundACustomersClient {
    @RequestMapping(method = RequestMethod.GET, value = "/customerslastvisit")
    ResponseEntity customersLastVisit(
            @RequestParam(value = "from", required = true) @DateTimeFormat(iso = DateTimeFormat.ISO.DATE) Date from,
            @RequestParam(value = "to", required = true) @DateTimeFormat(iso = DateTimeFormat.ISO.DATE) Date to);
}

In der Regel, fast copy-paste. Und jetzt irgendwo in meinem boot App, nutze ich das:

DateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");
ResponseEntity response = inboundACustomersClient.customersLastVisit(formatter.parse(formatter.format(from)),
        formatter.parse(formatter.format(to)));

Und was ich zurück bekomme ist, dass

verschachtelte Ausnahme ist
org.springframework.core.konvertieren.ConversionFailedException: Failed to
konvertieren von type [java.lang.String] zu geben
[@org.springframework.web.binden.Anmerkung.RequestParam
@org.springframework.format.Anmerkung.DateTimeFormat-java.util.Datum]
für den Wert "Sun May 03 00:00:00 CEST 2015';

nested exception is java.lang.IllegalArgumentException: Nicht
parse 'Sun May 03 00:00:00 CEST 2015'

So, die Frage ist, was mache ich falsch mit dem Wunsch, dass es nicht analysieren, um "Datum-only" - format, bevor Sie an meiner API? Oder vielleicht ist es ein reines Vortäuschen lib problem?

InformationsquelleAutor patrykos91 | 2016-02-02
Schreibe einen Kommentar