首页 > 解决方案 > 我的 SPRINGBOOT 应用程序中有 2 种类型的资源:JAX-RX 控制器和 spring RestController,我无法访问 spring RestController 资源

问题描述

我有一个 springboot 应用程序,我在其中使用了两种类型的 api 控制器:

  1. 泽西控制器使用@Path("/v1/test")@Service组合
  2. Spring Rest Controller 使用@RequestMapping(value = "/xyz/")@RestController组合

我将球衣应用程序路径保留为空白 spring.jersey.application-path=

每当我尝试访问 /xyz uri 时,它都会给我 404 not found 错误。它尝试在所有球衣资源下查找 uri,如果在那里找不到,则会给出 404 not found 错误。

我尝试了两件事:

  1. 我尝试为球衣应用程序路径提供一些随机路径,如下所示: spring.jersey.application-path=abc 在这种情况下,它能够区分两种类型的控制器,因此我能够访问/abc/v1/test作为以及/xyz
  2. 我在 jersey 控制器中创建了/xyz并将其从 spring rest 控制器中删除,并且我将 jersey 应用程序路径保持为空白。在这种情况下,我也可以同时访问这两个 api。

但我两个都不想要。如何配置 springboot,以便如果在 jersey 控制器中找不到任何资源,它应该寻找 spring rest 控制器,并且我仍然可以将spring.jersey.application-path属性保留为空白。

标签: javaspring-bootjersey

解决方案


推荐阅读