【发布时间】:2017-04-04 20:04:56
【问题描述】:
我想在 Liferay 7 中覆盖 LayoutImpl 的方法。我尝试使用服务包装器,但在服务名称类别中没有此类的选项。
我怎样才能做到这一点?我需要 ModelListener 吗?
【问题讨论】:
-
describe your goal 总是有帮助的
我想在 Liferay 7 中覆盖 LayoutImpl 的方法。我尝试使用服务包装器,但在服务名称类别中没有此类的选项。
我怎样才能做到这一点?我需要 ModelListener 吗?
【问题讨论】:
提示:服务包装器用于包装服务。 Liferay 中的服务通常命名为...Service,例如LayoutLocalService。
结论:LayoutImpl 类没有服务——这就是为什么你不能用服务包装器来包装它。
您可以将LayoutLocalService 包装在服务包装器中,将返回值包装在您的LayoutWrapper 中并解开参数。但这很麻烦,并且会阻止 Liferay 升级。
如果您想覆盖 LayoutImpl 来修复错误 - 您应该使用 Ext 插件。
ModelListener 只能在文章更新期间更改内容,而不是实现 - 我认为这在这里没有帮助。
【讨论】: