Это сильно зависит от того, чего вы пытаетесь достичь. То есть, планируете ли вы создать настольное одностраничное приложение, в котором большая часть состояния удерживается клиентом, или основная логика, а также HTML-страницы предоставляются сервером.
Если вы выберете приложение, похожее на настольное, вы, скорее всего, полностью создадите клиентское приложение с помощью GWT. Для первоначального запроса Seam возвращает простую html-страницу, которая выбирает .nocache.js
, которая в свою очередь загружает скомпилированный основной скрипт .cache.html
вашего приложения. Отсюда GWT вступает во владение (начиная с onModuleLoad()
в EntryPoint
загруженного модуля) и создает весь макет вашего приложения, заменяя тег <body>
возвращенной HTML-страницы. Взаимодействие с пользователем и состояние синхронизируются через сервер, но рендеринг выполняется GWT.
Если вы выберете комбинацию Seam и JSF, вы все равно сможете воспользоваться GWT. Обычный сценарий - выборочная вставка виджетов GWT в определенные места на существующей html-странице (подробности см. здесь ). Таким образом, вы можете использовать Seam для рендеринга, потока страниц и т. Д. И расширять свои страницы с помощью виджетов GWT.
Кстати, если вам нужен SSL для регистрации и / или аутентификации пользователя (и автоматического заполнения формы!), Я настоятельно рекомендую сделать это в соответствии с рекомендациями @kraftan. Все остальное - боль.