小编IJR*_*IJR的帖子

我如何在Tomcat上的JAX-RS(Jersey)中返回HTTP 404 JSON/XML响应?

我有以下代码:

@Path("/users/{id}")
public class UserResource {

    @Autowired
    private UserDao userDao;

    @GET
    @Produces({MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON})
    public User getUser(@PathParam("id") int id) {
        User user = userDao.getUserById(id);
        if (user == null) {
            throw new NotFoundException();
        }
        return user;
    }
Run Code Online (Sandbox Code Playgroud)

如果我请求不存在的用户,例如/users/1234" Accept: application/json",则此代码返回一个HTTP 404人们期望的响应,但返回Content-Type设置为text/htmlhtml的正文消息.注释@Produces被忽略.

这是代码问题还是配置问题?

java rest tomcat http-status-code-404 jersey-2.0

31
推荐指数
2
解决办法
4万
查看次数

标签 统计

http-status-code-404 ×1

java ×1

jersey-2.0 ×1

rest ×1

tomcat ×1