在Ebean和Dropwizard中找不到处理

时间:2015-12-16 12:50:46

标签: java jersey ebean dropwizard

我在resources中有以下代码:

@GET
@Timed
@Path("/{username}")
public Object findUserByUsername(@PathParam("username") String username){
    User user = Ebean.find(User.class)
            .setDisableLazyLoading(true)
            .where()
            .eq("username", username)
            .findUnique();
    if(user != null) {
        return Response
                .status(Response.Status.OK)
                .entity(Ebean.json().toJson(user))
                .build();
    }else{
        return Response
                .status(Response.Status.NOT_FOUND)
                .build();
    }
}

我希望能够在Ebean上发生错误时处理错误,就像在这种情况下,如果没有给定User的{​​{1}},我想构建一个自定义响应。但是当username找不到匹配的数据时,它会返回默认的错误页面。如何自定义此行为?

1 个答案:

答案 0 :(得分:0)

要防止显示默认页面,只需向.entity()提供Response错误代码,它将使用{{1}内的模型json替换默认页面}}