eg.

@GetMapping(value = "/test")
public String foo(@RequestBean Pojo Pojo) {
    return "";
}

private static class Pojo {

    @QueryParam("id")
    private int id;

    @HeaderParam("message")
    private String message;

    private AsyncRequest request;
    private AsyncResponse response;

    public int getId() {
        return id;
    }

    //getter & setter
}