Запуск нескольких веб-приложений в одном загрузочном контейнере spring
Я хотел бы иметь возможность иметь несколько веб-приложений, совместно использующих проект домена и работающих под разными контекстными пакетами.
Установив server.contextPath =/webshop в загрузочном приложении spring, мне не нужно префикс всех RequestMappings.
Я хотел бы, чтобы веб-мастер, администратор и главная страница могли совместно использовать общий проект домена, который содержит все сущности и общие службы.
Может быть, с чем-то вроде?
public static void main(String[] args) {
new SpringApplicationBuilder(Domain.class)
.showBanner(false)
.child(Admin.class, Webshop.class)
.run(args);
}
Моя проблема заключается в том, как запустить загрузочное приложение spring с общей моделью домена, а затем пару автономных веб-приложений с уникальными contextPaths?
Ответы
Ответ 1
Как это, например:
public static void main(String[] args) {
start(Admin.class, Webshop.class).run(args);
start(Another.class).properties("server.port=${other.port:9000}").run(args);
}
private static SpringApplicationBuilder start(Class<?>... sources) {
return new SpringApplicationBuilder(Domain.class)
.showBanner(false)
.child(sources);
}
Он запускает два приложения на разных портах.