採用了最新Spring的MVC(3.1.2.RELEASE)如何使用Spring RestOperations獲得在單元測試中發送的PageRequest對象?
我有一個可調頁的REST方法是這樣的:
@RequestMapping(value = "/myThings", method = RequestMethod.GET)
public @ResponseBody
Page<MyThings> findMyThings(@Valid PageRequest pageRequest) {
Page<MyThings> myThings = myService.findMyThings(pageRequest);
return myThings;
}
試圖與org.springframework.web.client.RestOperations測試。一切正常,特別是對於不可修改的請求。但是,對於可分頁的,在REST方法中收到的'pageRequest'對象是由默認構造函數創建的,而不是創建並傳遞到調用中的對象。
這是我試了一下(其中restTemplate是「RestOperations」的一個實例:
.... // make the pageRequest object
if (pageRequest != null) {
params.put("pageRequest", pageRequest);
}
String json = restTemplate.getForObject(restEndpoint + "/myThings",
String.class, Collections.unmodifiableMap(params));
我知道問題/問題是在這一側 - 如果我部署到Tomcat,並通過傳遞pageRequest PARAMS此外,我通過Spring代碼退出,看起來好像pageRequest被放入模型中,它將被拉出,否則就會得到默認值,這就是我所得到的
任何人都可以幫忙嗎?
謝謝!
是的,你是正確的。我與那個做我們的UI的人交談,這是有效的,因爲他明確地傳遞了值作爲urlVariables [我不知道]。謝謝 - 這解決了什麼是神祕的行爲! – JoeG 2012-08-06 20:34:02