0

在从 ATG BCC 创建新的外部用户时,我需要包含一些逻辑,例如加密密码和向用户发送电子邮件。通过扩展 GSAPropertyDescriptor 类并覆盖其 getPropertyValue(RepositoryItemImpl pItem, Object pValue) 方法来实现此功能。

问题是,只有当我们从用户部分中的“常规”选项卡中单击创建按钮时才会调用此方法,而不是在“商务”、“组织和角色”、“用户细分”等其他选项卡中单击相同的创建按钮时”和“高级”。

请推荐!!

4

1 回答 1

0

为此实现覆盖项目的 getPropertyValue 不是一个好主意。正确的方法是使用负责保存用户的表单处理程序。找到这个表单处理程序有点棘手。它将位于 BCC 实例的 atg/web/viewmapping/ViewMappingRepository/ 中。在这个存储库中,将有许多为不同目的配置的表单处理程序。您必须选择与用户编辑相关的一项。以下是您可能会在那里找到的示例:

有了这个,你可以去适当的 Formhanlder,比如这里提到的 /atg/web/assetmanager/editor/profile/UserFormHandler。并用您自己的实现覆盖模块中的该组件。完成后,您将拥有操作的控制权。您可以完成您的工作并将控制权传递给超类(原始实现)。

问候, 锯齿

于 2015-01-03T02:04:38.003 回答