gpt4 book ai didi

java - 尝试将整数作为实体返回时出错

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:49:57 25 4
gpt4 key购买 nike

我注意到当我使用 Response.status(201).entity(id).build 时,它返回以下错误:

严重:找不到媒体 type=application/json、type=class java.lang.Integer、genericType=class java.lang.Integer 的 MessageBodyWriter。

    @POST
@Produces({"application/json"})
public Response createUser(
@NotNull @FormParam("username") String username,
@NotNull @FormParam("password") String password,
@NotNull @FormParam("role") String role) {

int id = 12;
return Response.status(201).entity(id).build();

}

最佳答案

单个 Integer 对象无法转换为 JSON,因为 JSON 就像映射(键值对)。你必须选择:

1) 将返回类型更改为文本

@Produces({"text/plain"})

2) 创建一个将您的单个值表示为 JSON 的类,例如:

class IntValue {
private Integer value;

public IntValue(int value) {
this.value = value;
}

// getter, setter
}

然后执行以下操作

return Response.status(201).entity(new IntValue(id)).build();

关于java - 尝试将整数作为实体返回时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45282955/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com