如何以编程方式在 AEM 中启动部署流程?
谢谢。
最佳答案
这是一个代码片段,可用于从 JSP 级别推出,与您在 JAVA 级别中执行此操作的方式相同。
<%@page import="com.day.cq.wcm.msm.api.RolloutManager"%>
<% Page rolloutthispage = pageManager.getPage("/content/geometrixx/en/toolbar"); //source page
RolloutManager.RolloutParams rolloutparams = new RolloutManager.RolloutParams();
rolloutparams.master = rolloutthispage;
rolloutparams.isDeep = true;
//rolloutmanager is an OSGI service so using here sling.getService to have a reference
com.day.cq.wcm.msm.api.RolloutManager rolloutManager = sling.getService(com.day.cq.wcm.msm.api.RolloutManager.class);
rolloutManager.rollout(rolloutparams);
%>
To Test this code snippet
我已经创建了一个从 /content/geometrixx/en/
到 /content/geometrixx/in
的实时副本
添加/更新了一些文本组件数据,如下所示
创建了一个仅用于调用此 jsp 逻辑的组件,称为来自其他项目页面的 JSP 逻辑。一旦调用了 jsp 逻辑,/content/geometrixx/in
Live Copy 中的 rollout 就会受到影响。
查看以下 API 以使用更多选项 RolloutManager , Trigger , RolloutParams
希望对你有帮助
关于java - AEM 通过 Java 类启动 Rollout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41750864/