Порталы и портлеты Java

В мире Java есть стандарт JSR-286, описывающий, как порталы и портлеты должны взаимодействовать: программные компоненты, совместно использующие единая веб-страница.

Кажется, существует несколько реализаций портала. Но существует ли в них работающий «рынок» сменных портлетов? Судя по тому, что я нашел в Интернете, он выглядит очень однобоко - все порталы и никаких портлетов. Это как если бы были десятки телефонов Android и не было приложений.

Если бы продукт был основан на JSR-286 (или какой-либо его реализации), какова вероятность того, что корпоративный заказчик получит набор портлетов, которые он может захотеть добавить на портал?

Мне кажется, что у большинства корпораций уже есть страница, похожая на портал, основанная на их выборе продукта ERP или CRM, на котором работает их бизнес, или, может быть, даже просто страница MS Outlook «Сегодня». Итак, если я отправляю новый продукт, предназначенный для корпоративных клиентов, и делаю его порталом (а не набором портлетов), какова вероятность того, что мои клиенты откажутся от своего существующего портала IBM / SAP / Oracle и будут использовать мой портал в качестве своей новой домашней страницы. ? (Я предполагаю: не очень хорошо.) И если я сделаю это набором портлетов, совместимых с JSR-286, у моих клиентов будет возможность размещать портлеты? (Я предполагаю: тоже не здорово).

Наконец, в JSR-286 совершенно ничего не говорится о HTML + JavaScript, то есть о том, как порталы и портлеты будут взаимодействовать внутри браузера. Все дело в серверной части Java, определяющей способ взаимодействия при использовании URL-адресов, чтобы каждое полное обновление страницы могло быть направлено на правильный портлет. Кажется, он не признает современный, богатый подход AJAX. Он упоминает AJAX лишь вскользь.

Это сообщение в блоге (и комментарии под ним) дали много пищи для размышлений и, кажется, подтверждают мои подозрения:

Профессиональный практический опыт наряду с вышеуказанными исследованиями привел меня к выводу, что архитектура портала не обладает достаточными техническими преимуществами и отличительными особенностями, чтобы гарантировать более широкое признание. На практике лишь немногие приложения могут ограничиваться изолированной и разрозненной функциональностью портлетов, и отказ от этой степени архитектурного контроля нереалистичен для программного обеспечения корпоративного уровня ... окно возможностей архитектуры портала, чтобы стать мейнстрим-технология не только закрылась, но и закрылась довольно давно.

Итак, резюмируя это как более логичный вопрос: какую реальную ценность я получу, построив на этом этапе JSR-286?


person Daniel Earwicker    schedule 12.07.2010    source источник


Ответы (1)


Единственное преимущество, о котором я знаю навскидку, заключается в том, что когда поставщики корпоративного программного обеспечения включают «интеграцию портала» в свой контрольный список функций, это обычно означает, что они написали портлеты в соответствии со стандартами JSR-168 или JSR-286. SAP, Banner и Magnolia - это некоторые из систем, которые мы здесь используем, которые работают таким образом, и некоторые организации ценят портальный подход.

Однако, как вы правильно заметили, это накладывает некоторые досадные ограничения на автора приложения. Мы также обнаружили, что ценность порталов несколько сомнительна, когда они размещаются рядом с системой единого входа, которая избавляет пользователя от необходимости входить в несколько приложений, но при этом позволяет каждому приложению пользоваться всеми преимуществами среды браузера.

FWIW, если вы все же решите распространять свою работу в виде коллекции портлетов, существуют существующие системы порталов, которые являются бесплатными / с открытым исходным кодом, которые вы могли бы предоставить людям, у которых еще не было контейнера портлетов:

http://java-source.net/open-source/portals

Надеюсь, все это немного поможет.

person Sean McMains    schedule 13.07.2010
comment
Спасибо. Ключевым моментом является ценность по сравнению с системой единого входа. CAS кажется популярным в мире Java, и я обнаружил, что его очень легко интегрировать из приложений, отличных от Java (даже собственный клиент в приложении C ++ не было слишком сложным), и как только вы сделаете этот шаг, вы уже имеют 95% стоимости интегрированных веб-приложений. Для визуальной интеграции я полностью придерживаюсь подхода Google Gadgets, где каждый портлет защищен в IFRAME. При необходимости каждый IFRAME может выполнять свой собственный проход перенаправления CAS. А в jQuery UI есть образец портлетов, который выполняет все аспекты пользовательского интерфейса за вас. - person Daniel Earwicker; 05.08.2010
comment
Мне кажется, это хороший способ пойти, Дэниел. Нам тоже очень нравится CAS - наша команда использовала его для нескольких приложений Rails и Perl, а также с Java. Я раньше не видел образец портлетов jQuery. Отлично! - person Sean McMains; 05.08.2010