2013-06-04 9 views
5

Poniżej znajduje się punkt końcowy POST w mojej wiosennej usłudze MVC REST. Chcę użyć ramek sprawdzania poprawności sprężyn, aby upewnić się, że lista, którą otrzymuję, nie jest pusta. Jak mam to zrobić? Czy muszę dostarczyć opakowanie fasoli do około listOfLongs?Jak sprawdzić poprawność parametru żądania, jeśli nie jest to fasola na wiosnę MVC?

@RequestMapping(value = "/some/path", method = RequestMethod.POST) 
    @ResponseBody 
    public Foo bar(@Valid @NotEmpty @RequestBody List<Long> listOfLongs) { 

    /* if (listOfLongs.size() == 0) { 
      throw new InvalidRequestException(); 
     } 
    */ 

     // do some useful work 
    } 

Jaki powinien być organ wnioskujący?

1) [123,456,789] 
2) { listOfLongs : [123,456,789]} 

Odpowiedz

4

Zapewnienie zawijanej fasoli to dobra praktyka.

class LongList { 

@NotEmpty 
private List<Long> listOfLongs; 

// Setters and Getters ... 

} 

Następnie Zapytanie ciało powinno być { listOfLongs : [123,456,789]}

@RequestMapping(value = "/some/path", method = RequestMethod.POST) 
@ResponseBody 
public Foo bar(@Valid @RequestBody LongList listOfLongs) { 

    // do some useful work 
} 
+0

Jak zweryfikować, jeśli param jest tylko ciąg? I nie chcę owijać. – Cengiz

+0

Dlaczego ta dobra praktyka? –

Powiązane problemy