2017-02-15 2 views
1

Ich versuche UriInfo zu verwenden, um die Liste der Anforderungsparameter zu bekommen, hier ist mein Code:Feder kann nicht instanziiert UriInfo in Ruhe Service

@RestController public class MyController { 
@RequestMapping(value = "/documents", produces = MediaType.APPLICATION_JSON_VALUE, method = RequestMethod.GET) 
public Object getDocuments(@Context UriInfo uriInfo, 
@RequestParam(value = "sta", required = false) String param1,  @RequestParam(value = "sta2", required = false) String param2){ 

    MultivaluedMap<String, String> queryParamList = uriInfo.getQueryParameters(); 

} 

dieser Code Ursache dieser Ausnahme: org.springframework.beans. BeanInstantiationException: Fehler instanziiert [javax.ws.rs.core.UriInfo]: Die angegebene Klasse ist eine Schnittstelle

dank für Hilfe

Antwort

1

Es ist, weil UriInfo kein Spring MVC-Objekt ist. Es ist ein JAX-RS-Objekt und Sie verwenden nicht JAX-RS, Sie verwenden Spring MVC. Mit Spring MVC, wenn Sie nur die Parameterkarte möchten, können Sie spritzen es nur mit @RequestParam

public Object getDocuments(@RequestParam MultiValueMap<String, String> requestParams) 

Hinweis ist die MultiValueMap eine Feder Klasse, es ist nicht die JAX-RS MultivaluedMap.

Siehe auch:

+0

Dank :) es funktioniert! –

Verwandte Themen