sto inviando alcuni parametri da un modulo in questo modo:Binding una lista in @RequestParam
myparam[0] : 'myValue1'
myparam[1] : 'myValue2'
myparam[2] : 'myValue3'
otherParam : 'otherValue'
anotherParam : 'anotherValue'
...
so di poter ottenere tutti i params nel metodo di controllo con l'aggiunta di un parametro come
public String controllerMethod(@RequestParam Map<String, String> params){
....
}
voglio associare i parametri myParam [] (non gli altri) ad una lista o array (tutto ciò che mantiene l'ordine di indice), quindi ho provato con una sintassi simile:
public String controllerMethod(@RequestParam(value="myParam") List<String> myParams){
....
}
e
public String controllerMethod(@RequestParam(value="myParam") String[] myParams){
....
}
ma nessuno di loro sono vincolanti le myParams. Anche quando aggiungo un valore per la mappa non è in grado di legare i params:
public String controllerMethod(@RequestParam(value="myParam") Map<String, String> params){
....
}
C'è qualche sintassi per legare alcuni params ad una lista o un array senza dover creare un oggetto come @ModelAttribute con una lista attributo in esso?
Grazie
non credo che questo è possibile. Il codice in 'HandlerMethodInvoker.resolveRequestParam' ottiene sempre il primo valore – skaffman
La risposta di Bernhard ha funzionato per me. – theblang
(* Spring Boot *): si tratta di 'method = RequestMethod.GET' o' method = RequestMethod.POST'? Se '.GET'' @RequestParam List groupVal' soddisfatto da '? GroupVal = kkk, ccc, mmm' con successo (* Spring Boot *) –
basil