如何调试REST发布请求?

时间:2014-06-30 13:20:36

标签: java rest post

我目前在开发基于REST的应用程序时遇到了问题。通常帮助自己使用谷歌,这次一点支持将非常有帮助。

我发送的REST帖子请求显然与方法签名不匹配。现在我想调试我发送的请求。如何获取发送的请求以检查数据?

我做什么?在客户端,该方法(这不是生产级代码btw。):

public boolean send() {
    Client client = ClientBuilder.newBuilder().build();
    WebTarget target = client.target(
            "http://localhost:8080/backend_war_exploded/user/register"
    );

    // this = class Registration 
    Entity entity = Entity.entity(this, MediaType.APPLICATION_JSON);

    try {
        Registration registration = target
                .request()
                .post(
                        entity,
                        Registration.class
                );
    } catch (Exception e) {
        e.printStackTrace();
        return false;
    }
    return true;
}

在服务器端:

@RequestMapping(
        value = "/register",
        method = RequestMethod.POST,
        headers = "Accept=application/json",
        produces = "application/json"
)
public ResponseEntity<SystemUser> create(
        @RequestBody SystemUser body
) {
    ResponseEntity<SystemUser> responseEntity = new ResponseEntity<>(
        systemUserService.create(body), HttpStatus.CREATED
    );
    return responseEntity;
}

在我的日志文件中,我最终得到:

ERROR [io.undertow.request] (default task-30) UT005023: Exception handling request to 
/backend_war_exploded/user/register: 
org.springframework.web.util.NestedServletException: Handler processing failed; 
nested exception is java.lang.NoSuchMethodError: 
org.springframework.core.MethodParameter.getContainingClass()Ljava/lang/Class;

我确实有一些工作GET请求,因此设置通常有效。我希望我能提供所有必要但不太多的代码。如果缺少任何信息,请告诉我,我会添加它。有用的是要么告诉我,我对REST实现的理解是错误的,要么告诉我,我怎么能找出我理解错误的内容。

编辑: 好的,感谢Jk1,我发现我有重复的库,我按照[1]中的描述进行了修复。现在我遇到BadRequestException,所以我仍然想调试我的REST服务请求。关于我如何调试它的任何想法?

[1] spring-data-jpa 1.6 requires spring framework 3 libraries, is that true, or what did I miss?

0 个答案:

没有答案