Моя компания является поставщиком программных решений для крупной телекоммуникационной компании. В настоящее время среда основана на IBM WebSphere, и внешние серверы IBM Portal взаимодействуют с кластером внутренних серверных приложений WebSphere, предоставляющих EJB-сервисы. Некоторые портлеты используют наш собственный MVC-шаблон, а некоторые написаны на JSF.
Недавно мы создали проверенное на практике приложение для многофункционального / толстого клиента, которое напрямую взаимодействует с EJB-компонентами на внутренних серверах. Он был написан с использованием платформы NetBeans и использует клиентскую библиотеку приложений WebSphere для установления связи с EJB.
Действительно болезненным было заставить клиента использовать безопасную связь JAAS / SSL. Но после того, как это было решено, мы обнаружили, что расширенный клиент имеет ряд преимуществ по сравнению с клиентскими приложениями веб-портала, к которым мы привыкли:
- Огромное преимущество в производительности (CORBA против HTTP, исключить посредника Portal Server)
- Разработка упрощается и ускоряется благодаря использованию визуального дизайнера NetBeans и в целом надежной архитектуры Swing
- Цикл отладки сокращается из-за отсутствия необходимости развертывания клиентского приложения на тестовом сервере
- Нет путаницы технологий, как при веб-разработке (Struts, JSF, JQuery, HTML, JSTL и т. Д. И т. Д.)
Пройдя некоторое время, испытывая боль от веб-разработки (даже JSF), я пришел к следующему выводу: богатые клиенты подходят не для каждой ситуации, но когда вы разрабатываете внутри компании решение на основе интрасети, тогда вы бы с ума сошли, если бы не рассматривали платформу NetBeans или Eclipse RCP.
Есть ли комментарии / опыт работы с богатыми клиентами или веб-клиентами?