Я пытался найти способ изменить приветственную страницу по умолчанию для приложения spring -boot, которое развертывается как война в производстве, но я не могу найти способ сделать это без web.xml файл.
В соответствии с документацией мы можем сделать это с помощью EmbeddedServletContainerFactory с помощью этого кода:
@Bean
public EmbeddedServletContainerFactory servletContainer() {
TomcatEmbeddedServletContainerFactory factory = new TomcatEmbeddedServletContainerFactory();
TomcatContextCustomizer contextCustomizer = new TomcatContextCustomizer() {
@Override
public void customize(Context context) {
context.addWelcomeFile("/<new welcome file>");
}
};
factory.addContextCustomizers(contextCustomizer);
return factory;
}
Хотя, когда мы создаем военный файл и развертываем его в tomcat и не используем Embedded Tomcat, это ничего не делает.
Любая идея? Если нам действительно нужно добавить файл web.xml, как мы можем это сделать и по-прежнему использовать spring загрузку? Должно ли мы указывать приложение bean (с основным методом) в качестве контекста приложения для DispatcherServlet? Документация не очень понятна.
Контейнеры Older Servlet не поддерживают процесс начальной загрузки ServletContextInitializer, используемый в Servlet 3.0. Вы можете использовать spring и spring Boot в этих контейнерах, но вам нужно будет добавить web.xml в ваше приложение и настроить его для загрузки ApplicationContext через DispatcherServlet.
Спасибо заранее!
Педро