未找到 RestController 中的映射

Mappings in RestController not found

我有一个定义默认路径和一些端点的 RestController:

@RestController
@EnableHypermediaSupport(type = EnableHypermediaSupport.HypermediaType.HAL)
@RequestMapping(path = "/somePath", produces = "application/hal+json")
public class SomeRestController {

  @GetMapping (path = "/otherPath")
  public String someEndpoint(){
  return "hello";
  }

    ...other endpoints...
}

我收到映射端点的 404。但是,如果我删除默认的 RequestMapping,端点会突然被拾取!我还为端点尝试了 RequestMapping (path =..., method=RequestMethod.GET),但结果相同...

如果我从一个端点删除@GetMapping,默认路径映射成功。

这是怎么回事?如果我有默认的 RequestMapping,为什么端点没有被映射?

你必须连接两个路径:

localhost:8080/somePath/otherPath

因为 class 之上的映射是针对此控制器中的所有方法的,并且将添加方法特定路径