Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用SpringRESTOperations在单元测试中获得发送的PageRequest对象?_Java_Spring_Spring Mvc - Fatal编程技术网

Java 如何使用SpringRESTOperations在单元测试中获得发送的PageRequest对象?

Java 如何使用SpringRESTOperations在单元测试中获得发送的PageRequest对象?,java,spring,spring-mvc,Java,Spring,Spring Mvc,使用最新的Spring MVC(3.1.2版本) 我有一个可分页的REST方法,类似于: @RequestMapping(value = "/myThings", method = RequestMethod.GET) public @ResponseBody Page<MyThings> findMyThings(@Valid PageRequest pageRequest) { Page<MyThings> myThings = myService.findM

使用最新的Spring MVC(3.1.2版本)

我有一个可分页的REST方法,类似于:

@RequestMapping(value = "/myThings", method = RequestMethod.GET)
public @ResponseBody
Page<MyThings> findMyThings(@Valid PageRequest pageRequest) {
    Page<MyThings> myThings = myService.findMyThings(pageRequest);
    return myThings;
}
我知道问题就在这方面——如果我部署到Tomcat并通过URL传递pageRequest参数,那么服务器端的分页就可以完美地工作。此外,我在Spring代码中进行了一步,看起来如果pageRequest被放入模型中,它将被拉出,否则会得到默认值,这就是我得到的

有人能帮忙吗


谢谢

传递集合的getForObject的参数。不可修改的映射(参数)实际上是
对象。。。urlVariables
,其中变量是@PathVariable类型声明的占位符,因此这仅适用于具有
@PathVariables

另一种方法是采用您现有的方式,但通过以下方式支持查询参数:

String json = restTemplate.getForObject(restEndpoint + "/myThings?pagerequest={pageRequest}", 
                    String.class, Collections.unmodifiableMap(params));

传递集合的getForObject的参数。不可修改映射(参数)实际上是
对象。。。urlVariables
,其中变量是@PathVariable类型声明的占位符,因此这仅适用于具有
@PathVariables

另一种方法是采用您现有的方式,但通过以下方式支持查询参数:

String json = restTemplate.getForObject(restEndpoint + "/myThings?pagerequest={pageRequest}", 
                    String.class, Collections.unmodifiableMap(params));

是的,你说得对。我和那个做UI的家伙谈过,这很有效,因为他将值显式地作为urlVariables传递(我不知道)。谢谢-这解决了原本神秘的行为!是的,你说得对。我和那个做UI的家伙谈过,这很有效,因为他将值显式地作为urlVariables传递(我不知道)。谢谢-这解决了原本神秘的行为!