我们有一个 Spring Boot 应用程序,我们将其部署为一个 war 文件。当我们更新到 Spring Boot 2.4.3 时,我们开始在内容协商管理器区域看到一个问题。该应用程序有一个 REST url (/xxx) 和一个运行 UI 应用程序的 webapp url (/xxx/yyy)。由于 Spring Boot 更改,webapp url 存在内容协商问题。如果我进行更改以支持 webapp,则 REST webapp 会出现问题。我正在考虑将 webapp 更改为子应用程序上下文并覆盖那里的内容协商管理器。
我看到很多子上下文的例子,但没有一个有战争部署。例如,我们不能为子上下文设置不同的端口。我尝试了几种使用 SpringApplicationBuilder 和 child() 方法的方法,但我从未看到实例化子上下文的配置。
public static void main(String[] args) {
new SpringApplicationBuilder()
.parent(RESTConfig.class).web(WebApplicationType.SERVLET)
.child(WebAppConfig.class).web(WebApplicationType.SERVLET)
.build()
.run(args);
}
这种方法有问题还是其他人可以提出前进的道路?