我尝试使用UriInfo获取请求参数列表,这是我的代码:
@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();
}
此代码导致此异常: org.springframework.beans.BeanInstantiationException:无法实例化[javax.ws.rs.core.UriInfo]:指定的类是一个接口
感谢您的帮助
答案 0 :(得分:1)
因为UriInfo
不是Spring MVC对象。它是一个JAX-RS对象,你没有使用JAX-RS,你正在使用Spring MVC。使用Spring MVC,如果您只想要参数映射,可以使用@RequestParam
public Object getDocuments(@RequestParam MultiValueMap<String, String> requestParams)
注意,MultiValueMap
是一个Spring类,它不是JAX-RS MultivaluedMap
。
另见: