You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JAX-RS接口调用404问题:正确的Postman请求URL是什么?

问题解答

404原因排查与正确URL说明

从你给出的JAX-RS接口和实现代码来看,接口的@Path("/students")加上方法的@Path("/try"),按理说组合后的路径是/students/try,但调用返回404,常见原因和正确URL的调整方式如下:

  • 缺少应用上下文路径:如果你的Web应用部署时设置了上下文路径(比如应用叫student-service),完整URL得加上这个路径,也就是:http://localhost:8080/student-service/students/try
  • 资源类未被正确扫描注册:要是项目没配置好JAX-RS的资源扫描(比如没在web.xml里指定应用类,或者注解配置没开扫描),接口根本不会被识别。得先确保资源类被正确注册,之后再用http://localhost:8080/students/try(无上下文路径时)调用
  • 路径斜杠的兼容问题:虽然代码里的斜杠写法合法,但有些JAX-RS实现对开头斜杠敏感。可以试试把方法上的@Path("/try")改成@Path("try"),组合路径还是/students/try,部分容器可能需要这么写才能识别

你的代码参考

接口定义:

import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;

@Path("/students")
@Produces(MediaType.APPLICATION_JSON)
public interface AddExampleResource {

    @Path("/try")
    @GET
    Response getById();
}

实现类:

import javax.ws.rs.core.Response;

public class AddExampleImplementation implements AddExampleResource {
    @Override
    public Response getById() {
        return Response.ok("student1").build();
    }
}

总结

最常出现的问题是忘了加应用上下文路径,先确认你部署Web应用时的上下文路径,把它加到URL开头就行。如果没有上下文路径,就检查JAX-RS的配置是否正确注册了资源类,之后再尝试调用http://localhost:8080/students/try。

内容的提问来源于stack exchange,提问作者some0neninja

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 05:40:05