繁体   English   中英

Dropwizard/Jersey 资源处理程序未正确解析 json 数据

[英]Dropwizard/Jersey resource handler not correctly parsing json data

我正在开发 Dropwizard/Jersey 后端。 在一种特殊情况下,发送的数据未被解析为适当的 object。如果我将 @NotEmpty 添加到字符串字段,我将收到 422 错误。 这是 java 代码:

static final class UpdateGroupParams {
  int itemgroupId;
  String name;
  String displayName;
  int priority;
  List<Integer> itemIds;
}

@PUT
@Path("{groupId: [0-9]+}")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public Response saveGroup(@NotNull @PathParam("groupId") int groupId, UpdateGroupParams params) {

使用此请求:

curl -X PUT -H 'AlliedAuth: xxx' -H 'Content-Type: application/json' -d '{"itemgroupId":1017,"priority":2,"name":"easter","displayName":"Easter","itemIds":[1007,1004,1006,1002,1005]}' -v http://localhost:8080/v1/siteadmin/groups/1017

saveGroup() 内部的一个断点显示 params 的值都是 0 或 null。

我究竟做错了什么?

问题是 UpdateGroupParams 没有构造函数。 添加 lombok 注释 @AllArgsConstructor 解决了这个问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM