配置 Live Copy 同步

执行以下任务以控制 Live Copy 与其源内容的同步方式和时间。

  • 确定现有的转出配置是否符合您的要求,或者您是否需要创建一个或多个配置。
  • 指定要用于 Live Copy 的转出配置。

已安装的自定义转出配置

本部分提供有关已安装转出配置、其所使用的同步操作以及如何在需要时创建自定义配置的信息。

注意

建议更新或更改现成的(已安装)转出配置​。 如果需要自定义实时操作,则应在自定义转出配置中添加该操作。

转出触发器

每个转出配置都使用一个可执行转出的转出触发器。转出配置可以使用以下触发器之一:

  • 转出:在 Blue Print 页面上使用​转出​命令,或者在 Live Copy 页面上使用​同步​命令。

  • 修改时:源页面已修改。

  • 激活:激活源页面。

  • 停用:停用源页面。

注意

使用“修改”触发器可能会影响性能。请参阅 MSM 最佳实践以了解更多信息。

已安装的转出配置

下表列出了随 AEM 一起安装的转出配置。该表包含每个转出配置的触发器和同步操作。如果已安装的转出配置操作不符合您的要求,您可以创建一个新的转出配置

名称 描述 触发器 同步操作

另请参阅已安装的同步操作
标准转出配置 标准转出配置,允许在触发转出时启动转出流程,并执行以下操作:创建、更新、删除内容和排序子节点。 转出 contentUpdate
contentCopy
contentDelete
referencesUpdate
productUpdate
orderChildren
在 Blueprint 激活时激活 在发布源时发布 Live Copy。 激活 targetActivate
在 Blueprint 停用时停用 在停用源时停用 Live Copy。 停用 targetDeactivate
修改时推送

在修改源时将内容推送到 Live Copy。

请谨慎使用此转出配置,因为此配置使用“修改”触发器。

修改 contentUpdate
contentCopy
contentDelete
referencesUpdate
orderChildren
修改时推送(简略)

在修改 Blueprint 页面时将内容推送到 Live Copy,而无需更新引用(例如,对于简略副本)。

请谨慎使用此转出配置,因为此配置使用“修改”触发器。

修改 contentUpdate
contentCopy
contentDelete
orderChildren
提升启动项 用于提升启动项页面的标准转出配置。 转出 contentUpdate
contentCopy
contentDelete
referencesUpdate
orderChildren
markLiveRelationship
目录页面内容转出配置 从目录 Blueprint 中应用页面模板。 转出 contentUpdate
contentCopy
contentDelete
referencesUpdate
productCreateUpdate
orderChildren
目录页面更新转出配置 从目录 Blueprint 中应用 Target 属性。必须在目录页面内容转出配置后运行。 转出 catalogRolloutHooks
DPS 发布转出配置 DPS 发布转出配置,该配置允许在转出触发器上启动转出过程,并在初始转出时排除 FolioProducer 绑定属性 转出 contentUpdate
contentCopy
contentDelete
referencesUpdate
orderChildren
dpsMetadataFilter
旧版 (5.6.0) 目录转出配置 已弃用。请使用 Catalog Generator 代替 MSM 进行目录转出。 转出 editProperties

已安装的同步操作

下表列出了随 AEM 一起安装的同步操作。如果已安装的操作不符合您的要求,您可以创建新的同步操作

操作名称 描述 属性
contentCopy 当源节点在 Live Copy 上不存在时,将节点复制到 Live Copy。配置CQ MSM内容复制操作服 务,以指定要排除的节点类型、段落项和页面属性。
contentDelete

删除源上不存在的Live Copy节点。 配置CQ MSM内容删除操作服 务,以指定要排除的节点类型、段落项和页面属性。

contentUpdate 使用来自源的更改来更新 Live Copy 内容。配置CQ MSM内容更新操作服 务,以指定要排除的节点类型、段落项和页面属性。
editProperties

编辑 Live Copy 的属性。editMap 属性确定编辑哪些属性及其值。editMap 属性的值必须使用以下格式:

[property_name_1]#[current_value]#[new_value],
[property_name_2]#[current_value]#[new_value],
... ,
[property_name_n]#[current_value]#[new_value]

current_valuenew_value项目是正则表达式。

例如,考虑 editMap 的以下值:

sling:resourceType#/(contentpage|homepage)#/
mobilecontentpage,
cq:template#/contentpage#/mobilecontentpage

该值将按照如下所示编辑 Live Copy 节点的属性:

  • 将设置为contentpage或设置为homepagesling:resourceType属性设置为 mobilecontentpage.
  • 设置为contentpagecq:template属性将设置为 mobilecontentpage.

editMap:(字符串)标识属性、当前值和新值。请参阅“描述”以了解相关信息。

notify 发送已转出的页面的页面事件。要接收通知,首先需要订阅转出事件。
orderChildren 在 Live Copy 上,根据 Blueprint 上的顺序对子代(节点)进行排序
referencesUpdate

在 Live Copy 上,此同步操作会更新引用,如链接。
将搜索 Live Copy 页面中指向 Blueprint 内资源的路径。找到后,它会更新路径以指向 Live Copy(而不是 Blueprint)内的相关资源。具有 Blueprint 外部目标的引用不会发生更改。

配置CQ MSM引用更新操作服 务,以指定要排除的节点类型、段落项和页面属性。

targetVersion

创建 Live Copy 的版本。

此操作必须是转出配置中包含的唯一同步操作。

targetActivate

激活 Live Copy。

此操作必须是转出配置中包含的唯一同步操作。

targetDeactivate

停用 Live Copy。

此操作必须是转出配置中包含的唯一同步操作。

workflow

启动由 Target 属性定义的工作流(仅适用于页面),并将 Live Copy 作为有效负荷。

目标路径是模型节点的路径。

target:(字符串)工作流模型的路径。
mandatory

为特定用户组将 Live Copy 页面上多个 ACL 的权限设置为只读。配置以下 ACL:

  • ActionSet.ACTION_NAME_REMOVE
  • ActionSet.ACTION_NAME_SET_PROPERTY
  • ActionSet.ACTION_NAME_ACL_MODIFY

仅对页面使用此操作。

目标:(字符串)您为其设置权限的组的ID。
mandatoryContent

为特定用户组将 Live Copy 页面上多个 ACL 的权限设置为只读。配置以下 ACL:

  • ActionSet.ACTION_NAME_SET_PROPERTY
  • ActionSet.ACTION_NAME_ACL_MODIFY

仅对页面使用此操作。

目标:(字符串)您为其设置权限的组的ID。
mandatoryStructure 为特定用户组将 Live Copy 页面上 ActionSet.ACTION_NAME_REMOVE ACL 的权限设置为只读。仅对页面使用此操作。 目标:(字符串)您为其设置权限的组的ID。
VersionCopyAction 如果已至少发布过一次 Blueprint/源页面,则使用发布的版本创建 Live Copy 页面。注意:此操作仅适用于基于已发布的源页面创建 Live Copy 页面,而不能用于更新现有的 Live Copy 页面。
PageMoveAction

当页面在 Blueprint 中移动时将应用 PageMoveAction。

该操作会将(相关的)LiveCopy 页面从移动前的位置复制到移动后的位置,而不是移动页面。

PageMoveAction 不会更改位于移动前位置的 LiveCopy 页面。因此,对于连续的 RolloutConfigurations,它具有不带 Blueprint 的 LiveRelationhip 的状态。

配置 CQ MSM 页面移动操作服务,以指定要排除的节点类型、段落项和页面属性。

此操作必须是转出配置中包含的唯一同步操作。

prop_referenceUpdate:(布尔)设置为 true 以更新引用。默认值为 true。

productCreateUpdate 创建或更新目录中的产品资源。此操作旨在用于以下情况之一:
  • 生成或转出目录(或目录部分)
  • 用户恢复产品组件的同步继承。
markLiveRelationship 指示启动项创建的内容存在实时关系。
catalogRolloutHooks 执行特定于目录生成的转出挂接。调用 CatalogGenerator 的 executePageRolloutHooks 和 executeProductRolloutHooks 方法。
请参阅 AEM Javadocs 中的 com.adobe.cq.commerce.pim.api.CatalogGenerator。
productUpdate 更新产品目录的 Live Copy 中的产品页面

创建转出配置

当安装的转出配置不符合您的应用程序要求时,您可以创建转出配置

在 Blueprint 或 Live Copy 页面上设置转出配置时,您可以使用该新转出配置。

从同步中排除属性和节点类型

您可以配置多个支持相应同步操作的 OSGi 服务,以便它们不会影响特定的节点类型和属性。例如,许多与 AEM 内部功能相关的属性和子节点不应包含在 Live Copy 中。只应复制与页面用户相关的内容。

使用AEM时,可通过多种方法来管理此类服务的配置设置;有关更多详细信息和建议的实践,请参阅配置OSGi

下表列出了可以为其指定要排除节点的同步操作。该表提供了要使用 Web 控制台进行配置的服务名称以及要使用存储库节点进行配置的 PID。

同步操作 Web控制台中的服务名称 服务PID
contentCopy CQ MSM内容复制操作 com.day.cq.wcm.msm.impl.actions.ContentCopyActionFactory
contentDelete CQ MSM内容删除操作 com.day.cq.wcm.msm.impl.actions.ContentDeleteActionFactory
contentUpdate CQ MSM内容更新操作 com.day.cq.wcm.msm.impl.actions.ContentUpdateActionFactory
PageMoveAction CQ MSM页面移动操作 com.day.cq.wcm.msm.impl.actions.PageMoveActionFactory
referencesUpdate CQ MSM引用更新操作 com.day.cq.wcm.msm.impl.actions.ReferencesUpdateActionFactory

下表描述了您可以配置的属性:

Web控制台属性/ OSGi属性 描述

排除的节点类型

cq.wcm.msm.action.excludednodetypes

与要从同步操作中排除的节点类型匹配的正则表达式。

排除的段落项目

cq.wcm.msm.action.excludedparagraphitems

与要从同步操作中排除的段落项目匹配的正则表达式。

排除的页面属性

cq.wcm.msm.action.excludedprops

与要从同步操作中排除的页面属性匹配的正则表达式。

忽略的Mixin NodeTypes

cq.wcm.msm.action.ignoredMixin

仅适用于CQ MSM内容更新操作。 与要从同步操作中排除的mixin节点类型名称匹配的正则表达式。
注意

在经典 UI 中,LiveCopy 页面“页面属性”对话框中显示的锁定图标不会反映“排除的页面属性”属性的配置。即使对于从同步操作中排除的属性,也会显示锁定图标。

注意

在触屏优化UI中,另请参阅在页面属性上配置MSM锁定)

CQ MSM 内容更新操作 - 排除项

默认情况下,将排除多个属性和节点类型,这些属性和节点类型在 CQ MSM 内容更新操作​的​排除的页面属性​下的 OSGi 配置中定义。

默认情况下,在转出时排除(即不更新)与以下正则表达式匹配的属性:

chlimage_1-18

您可以根据需要更改定义排除列表的表达式。

例如,如果您希望将页面​标题​包含在考虑转出的更改中,请从排除项中删除 jcr:title。例如,使用正则表达式:

jcr:(?!(title)$).*

配置同步以更新引用

您可以配置多个 OSGi 服务以支持与更新引用相关的对应同步操作。

使用AEM时,可通过多种方法来管理此类服务的配置设置;有关更多详细信息和建议的实践,请参阅配置OSGi

下表列出了可以为其指定引用更新的同步操作。该表提供了要使用 Web 控制台进行配置的服务名称以及要使用存储库节点进行配置的 PID。

Web控制台属性/ OSGi属性 描述

更新嵌套LiveCopy中的引用

cq.wcm.msm.impl.action.referencesupdate.prop_updateNested

仅适用于CQ MSM引用更新操作。 选择此选项(Web控制台)或将此布尔属性设置为true(存储库配置),以替换针对位于最顶部LiveCopy分支中的任何资源的引用。

更新引用页面

cq.wcm.msm.impl.actions.pagemove.prop_referenceUpdate

仅适用于CQ MSM页面移动操作。 选择此选项(Web控制台)或将此布尔属性设置为true(存储库配置)以更新任何引用,以使用原始页面来引用LiveCopy页面。

指定要使用的转出配置

MSM 允许您指定一般使用的转出配置集,并在需要时可以覆盖特定 Live Copy 的转出配置。MSM 提供了多个位置可指定要使用的转出配置。该位置将确定配置是否适用于特定的 Live Copy。

下文列出了可在其中指定要使用的转出配置的位置,并描述了 MSM 如何确定要用于 Live Copy 的转出配置:

  • Live Copy 页面属性​当 Live Copy 页面配置为使用一个或多个转出配置时,MSM 将使用这些转出配置。
  • Blueprint 页面属性​当 Live Copy 基于 Blueprint 且 Live Copy 页面未配置转出配置时,将使用与 Blueprint 源页面关联的转出配置。
  • Live Copy父页面属性: 如果Live Copy页面和Blueprint源页面均未使用转出配置进行配置,则会使用应用于Live Copy页面父页面的转出配置。
  • 系统默认: 当无法确定Live Copy父页面的转出配置时,将使用系统默认转出配置。

例如,某个 Blueprint 使用 We.Retail 引用站点作为源内容。从该 Blueprint 创建一个网站。以下列表中的每个项都描述了有关使用转出配置的不同场景:

  • 所有 Blueprint 页面或 Live Copy 页面均未配置为使用转出配置。MSM 对所有 Live Copy 页面使用系统默认转出配置。
  • We.Retail 引用站点的根页面配置了多个转出配置。MSM 对所有 Live Copy 页面使用这些转出配置。
  • We.Retail引用站点的根页面配置了多个转出配置,而Live Copy站点的根页面配置了一组不同的转出配置。 MSM 使用在 Live Copy 站点根页面上配置的转出配置。

为 Live Copy 页面设置转出配置

使用要在转出源页面时使用的转出配置对 Live Copy 页面进行配置。子页面默认情况下会继承该配置。在配置要使用的转出配置时,将覆盖 Live Copy 页面从其父页面继承的配置。

您还可以在创建 Live Copy 时为 Live Copy 页面配置转出配置。

  1. 使用​站点​控制台选择 Live Copy 页面。

  2. 从工具栏中选择​属性

  3. 打开 Live Copy 选项卡。

    配置​部分将显示页面继承的转出配置。

    chlimage_1-19

  4. 如果需要,可调整 Live Copy 继承​标记。如果选中,Live Copy 配置将在所有子项上都有效。

  5. 清除​继承父项的转出配置​属性,然后从列表中选择一个或多个转出配置。

    选择的转出配置将显示在下拉列表下。

    chlimage_1-20

  6. 单击或点按​保存

为 Blueprint 页面设置转出配置

使用要在转出 Blueprint 页面时使用的转出配置对 Blueprint 页面进行配置。

请注意,Blueprint 页面的子页面将继承该配置。在配置要使用的转出配置时,可能会覆盖页面从其父页面继承的配置。

  1. 使用​站点​控制台选择 Blueprint 的根页面。
  2. 从工具栏中选择​属性
  3. 打开 Blueprint 选项卡。
  4. 使用下拉选择器选择一个或多个​转出配置
  5. 使用​保存​持久存储您的更新。

设置系统默认转出配置

指定要用作系统默认值的转出配置。要指定默认值,请配置 OSGi 服务:

  • Day CQ WCM Live Relationship Manager 服务 PID 为
    com.day.cq.wcm.msm.impl.LiveRelationshipManagerImpl

使用 Web 控制台存储库节点配置服务。

  • 在 Web 控制台中,要配置的属性名称是默认转出配置。
  • 使用存储库节点,要配置的属性名称为liverelationshipmgr.relationsconfig.default

将此属性值设置为要用作系统默认值的转出配置的路径。默认值为/libs/msm/wcm/rolloutconfigs/default,它是​标准转出配置

在此页面上