gpt4 book ai didi

java - JAX RS 获取对象列表

转载 作者:行者123 更新时间:2023-11-29 03:08:47 24 4
gpt4 key购买 nike

尝试使用 JAX RS 我想用我的数据实现 CRUD 操作。首先,我想获取 json formate 中的对象列表。

@Path("/users")
public class ListUsersRestController {

@GET
@Produces("application/json")
public List<User> getUsers(){

List<User> users = new ArrayList<>();
users.add(new User("Dean", "Winchester"));
users.add(new User("Sam", "Winchester"));
users.add(new User("Bobby", "Singer"));
return users;
}

@XmlRootElement
public class User {

@XmlElement(name="first-name")
private String firstName;

@XmlElement(name="last-name")
private String lastName;

public User(){

}

public User(String firstName, String lastName) {
this.firstName = firstName;
this.lastName = lastName;
}

}
}

当我请求我的 URI 时,我总是收到 500 服务器错误并且日志文件中没有任何错误(我使用的是 glassfish)。

最佳答案

问题出在这里:

@XmlRootElement
public class User {
...
}

您的 User 类现在是 ListUsersRestController 的内部类并且 JAXB 似乎无法编码内部类(因为它们更像是 的实例成员ListUsersRestController 而不是真正的类)。要么将其外部化为普通类,要么使其成为static:

@XmlRootElement
public static class User {
...
}

关于java - JAX RS 获取对象列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30666001/

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