Java Rest API方法正在返回值,但仍收到500错误

Java Rest API方法正在返回值,但仍收到500错误,java,jquery,ajax,rest,jersey,Java,Jquery,Ajax,Rest,Jersey,我正在开发一个JavaJersey RESTAPI和一个使用该API的网站 这是我的服务器端方法 @GET @Produces(MediaType.APPLICATION_JSON) public List<TreeViewModel> getTreeList() { User user = User.getByCredentials("team", "team"); List<TreeViewModel> list = user.getTreeViewM

我正在开发一个JavaJersey RESTAPI和一个使用该API的网站

这是我的服务器端方法

@GET
@Produces(MediaType.APPLICATION_JSON)
public List<TreeViewModel> getTreeList() {
    User user = User.getByCredentials("team", "team");
    List<TreeViewModel> list = user.getTreeViewModels();
    return list;
}
}

如果我调试服务器,就会调用该方法并返回列表。但在客户端,我收到一个500错误,这表明服务器端出了问题

有什么建议吗?
提前感谢。

500表示内部服务器错误,通常应伴随日志消息,甚至在某些情况下,在发送给客户端的消息正文中嵌入异常

最可能发生的情况是,您的方法已经处理并返回了
列表
,但随后无法序列化以发送


例如,一些序列化程序不喜欢使用原始集合。您需要拥有自己的对象,然后将列表放入其中。找到问题的真正原因的唯一方法是找到异常并查看它告诉您的信息。

检查控制台输出。将对象序列化为JSON
字符串时可能会出现问题。服务器调试输出显示了什么?或者最好在上面设置一个断点。我猜您的JSON生成器无法创建TreeViewModel的JSON表示。
function requestTrees() {
$.ajax({
    type: "GET",
    url: window.api + "tree",
    dataType: 'json',
    beforeSend: function(xhr) {
        xhr.setRequestHeader("Authorization", make_base_auth('team', 'team'));
    },
    success: function(data) {
        console.log('suc');
    },
    complete: function(jqxhr, txt_status) {
        console.log('com');
    },
    failed: function(data) {
        console.log('fai');
    }
});