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

Jetty启动后访问接口出现404错误,请求排查解决

Jetty 404错误排查与修复

错误原因分析

  1. 上下文路径与映射路径不匹配
    你将ServletContextHandler的上下文路径设置为了"/example",这意味着所有通过该处理器处理的请求必须先带上/example前缀。而你把Jersey的Servlet映射到了"/api/*",所以实际可访问的有效路径是localhost:8080/example/api、localhost:8080/example/api/example,但你访问的是不带/example前缀的路径,Jetty找不到对应的处理逻辑,因此返回404。

  2. 访问路径不符合配置规则
    你尝试访问的localhost:8080/api、/api等路径,没有匹配到任何处理器的上下文路径,自然无法被正确路由。

修复方案

方案一:直接通过localhost:8080/api访问(推荐)

修改ServletContextHandler的上下文路径为根路径"/",这样请求无需额外前缀即可匹配到映射的/api/*路径:

ServletContextHandler handler = new ServletContextHandler(server, "/");

方案二:保留/example上下文路径

如果确实需要保留/example作为上下文前缀,那么访问时必须带上该前缀,比如:

  • localhost:8080/example/api
  • localhost:8080/example/api/example

额外检查点

  • 确保api包下的Jersey资源类(带有@Path注解的类)配置正确,比如资源类上的@Path值是否和你期望访问的子路径匹配。
  • 确认CORSConfig的注册逻辑正确(这不是404的直接原因,但会影响跨域请求的正常执行)。

内容的提问来源于stack exchange,提问作者J. Doe

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 06:21:28