Я пишу свое первое приложение на основе портлета (для liferay, но решение должно быть не агентом), и мне интересно, как люди решают предоставить ссылки пользователю, к различным портлетам (возможно, на разных «страницах» в портале).Программирование портала/портлетов - привязка портлета/поток страниц
Хотя вы можете легко иметь разные режимы просмотра внутри вашего портлета, как вы можете ссылаться на другой портлет и (возможно) также передавать параметры вдоль?
Я не говорю об простой связи между портлетами, это интересует меня настоящий pageflow.
Пример: У вас есть страница A с портлетом, который отображает список новостей. Тогда у вас есть страница B, которая настроена таким образом. Мне нужен один элемент новостей, который будет показан (например, различные портлеты вокруг него).
Есть ли общее решение для ссылки на страницу B и сообщить новостям -Detail-Portlet, чтобы он отображал элемент XYZ?
Быстрое и грязное решение было бы сконфигурировать целевую ссылку через режим редактирования портлета news-list-portlet. Но это имеет ряд недостатков: - сложные портлеты могут иметь несколько целевой URL-адресов, что приводит к массовым усилиям конфигурации для портала администратора - URL-адрес не может следовать схеме, которая позволяет инъекции простого параметра
У меня есть решение в виде, но это потребует больших усилий и, возможно, изменений в целевых портлетах, что не всегда возможно, если вы используете портлеты сторонних разработчиков.
Мое решение будет выглядеть следующим образом: (проект!)
Portlets зарегистрироваться на центральную службу с их портлетными идентификаторами и когда портлет хочет связать с портлетом может сделать поиск на основе символического имени. Это облегчило бы боль для администратора, потому что можно «автоматически обнаружить» портлеты. Служба также может предоставлять пользовательский интерфейс для проводки портлетов на основе исходного и целевого портлетов.
Создание URL-адресов для портлетов, которые могут быть изменены, может быть разрешено посредством вызова службы портлету, который генерирует URL-адрес в целом с введенными параметрами и возвращает его. Для портлетов, которые вы не можете изменить, вам необходимо добавить параметры и надеяться, что они будут работать. : -/
Любые предложения? Существуют ли более простые решения? существующие решения?
Спасибо!
Патрик
Спасибо, так что мне кажется, что я должен написать что-то свое, что использует абстракцию. –