【问题标题】:Liferay model listener orderingLiferay 模型监听器排序
【发布时间】:2014-08-27 10:26:07
【问题描述】:

以下是我的要求:

每当创建网站时,在GroupListener 的帮助下,我们都会向创建的网站添加一些自定义属性。

所以假设您正在创建“Liferay Test”站点,那么它将有一些修复自定义属性“XYZ”,其值在 GroupListeners onAfterCreate 方法中设置。

我可以在网站设置下的自定义字段中看到这个值。 现在基于这个值,我们正在另一个系统中创建组(在 liferay 之外,使用 web 服务)。

到目前为止一切顺利。

每当我们删除站点时,我们都需要通过网络服务从其他系统中删除等效组。 但是在删除站点时,在 GroupListener 中我们无法检索自定义属性。

在通过添加 expando 侦听器进行进一步调试时,我观察到 Expando 侦听器首先被调用,然后删除 GroupLocalService/GroupListener 的方法。

因此我们无法删除另一个系统中存在的组。

所以我想知道我们是否可以为听众定义排序。

Note: Since we were not getting custom attributes in listeners we implemented GroupLocalServiceImpl and with this we are getting custom attributes in delete method on local environment but not on our stage environment which has clustering.

【问题讨论】:

    标签: liferay liferay-6


    【解决方案1】:

    您不应该将 ModelListeners 用于此类更改,而应创建 ServiceWrappers,例如将有趣的方法包装在 GroupLocalService 中(用于创建和删除)。

    这也将使您能够对在外部系统等中创建记录的失败做出反应。

    【讨论】:

      猜你喜欢
      • 2013-06-08
      • 2017-03-23
      • 2020-03-18
      • 1970-01-01
      • 1970-01-01
      • 2013-11-20
      • 2014-06-26
      • 2014-12-04
      • 1970-01-01
      相关资源
      最近更新 更多