我正在尝试向现有的Spring Boot 2应用程序添加新的上下文。我已经为我们的后端应用程序实现了一些REST服务,其中之一将用于上传徽标图像。挑战在于如何仅将这些上传的(静态)文件提供给Angular客户端应用程序(在Tomcat配置中),例如/文件。
我发现可以使用TomcatServletWebServerFactory.addContextCusomizers(...)添加ContextCustomizer,并且可以自定义上下文对象。但是,我没有找到任何添加新上下文的选项,并且如果我更改现有上下文的path / docBase属性,则整个应用程序的上下文路径当然也会更改。
@Override
public void customize(TomcatServletWebServerFactory factory) {
TomcatContextCustomizer ctxCustomizer = new TomcatContextCustomizer() {
@Override
public void customize(Context context) {
context.setPath(contextPath);
context.setDocBase(uploadFolder);
}
};
factory.addContextCustomizers(ctxCustomizer);
}