У меня есть приложения, построенные на Spring 3 + JPA 2 + JSF 2 / Vaadin, работающие на контейнере сервлета (Tomcat / Jetty).
Мое приложение теперь является веб-приложением. Он делает три вещи:
- предоставляет веб-интерфейс пользователя через JSF 2 или Vaadin
- предоставляет услуги RESTful для внешних пользователей
- выполняет очень важную обработку в запланированных заданиях
Мне нужно просто повторно развернуть изменения в интерфейсе, не останавливая службы REST и запланированные задания. Я знаю, что могу создать два (или более) веб-приложения и использовать интерфейсы RMI или очередь сообщений для удаленного вызова метода. Я ищу что-то попроще. Эти приложения могут работать на одном Tomcat (одной JVM).
Люди говорят: «В PHP я могу изменить кнопку / таблицу / панель ... ничего не останавливая». Я хотел бы, чтобы простые вещи были простыми.
Как вы решаете такого рода проблемы? Является ли OSGi единственным решением? Я думаю, что OSGi слишком сложен для такого простого сценария.