Liferay portlet能获得参数吗?

我无法理解CMS中portlet的概念。

假设我写了一个天气portlet来显示当前的温度。 我构建它,将它打包在战争中,在Liferay中部署战争。

现在我创建了一个页面,我想创建我编写的2个portlet实例。 我想显示西雅图的天气和迈阿密的天气。

我可以这样做吗? 如何向portlet传递一个参数来告诉它要显示哪个城市?

Portlet有所谓的EDIT模式。 您可以实施编辑模式以显示表单,以选择要显示温度的城市。 将其保存到portlet首选项。 当您将portlet呈现为正常(VIEW)模式时,请查看城市的首选项。

另一个选项是PortletConfig – 它通常在portlet.xml中配置,类似于Servlet init params。 偏好可能是你最好的选择。

如果您特别在Liferay工作,LR的模型构建器基础架构将为您提供大量此function,包括以跨容器可移植性为代价快速/廉价编辑。 从好的方面来说,它将与LR(有限的)RBAC很好地集成,这在分布式内容创作环境中往往很重要