Полагаю, вы наткнулись на Liferay Portal Server как бесплатный сервер портала с открытым исходным кодом, чтобы начать экспериментировать с портлетами.
На момент работы с портлетами последняя версия спецификации портлетов была JSR 286 (v2.0). Таким образом, все портлеты, созданные с использованием базовых портлетов Struts, Spring, JSF, будут следовать этой спецификации в качестве основного принципа. Новая спецификация предоставляет новые функции (общедоступные параметры рендеринга, события для взаимодействия между портлетами), новые фазы жизненного цикла портлетов (ресурс, событие) и другие функциональные возможности, отличные от тех, которые были предоставлены портлетами на основе JSR 168.
Однако для соответствующей структуры необходимо соблюдать следующее:
Struts поддерживает портлеты JSR 168 (v1.0), а не JSR 286 на сегодняшний день. Это достигается с помощью моста портлета Struts.
JSF обеспечивает поддержку как JSR 168, так и 286, и это также достигается с помощью моста портлета JSF (http://jcp.org/en/jsr/detail?id=301).
Spring Каркас портлета основан на Spring Spring. С ними довольно легко работать. Если в этом случае у вас уже есть опыт работы со средой Spring, тогда за ней будет очень легко следовать и начинать. Последняя версия весной v3.1. Это поддержка JSR 286 и обратно совместимая.
Большинство функционирующих функций в основном покрываются каркасами / мостами , за исключением немногих, которые зависят от конфигурации сервера портала . Для функций, которые работают на основе сервера портала (например, Liferay, WebSphere Portal и т. Д.), Вам необходимо обратиться к документации сервера, чтобы увидеть, что необходимо объявить в файле portlet.xml и других файлах конфигурации, как если бы быть упомянутым и для сервера .
Я бы также порекомендовал книгу Ашиша Сарина " Портлеты в действии *", в которой все объясняется с нуля.
Всего наилучшего.