Репликация – это процесс активации/публикации страницы и ее содержимого от автора к среде публикации. AEM предоставляет репликацию API для создания пользовательского шага, который копирует содержимое из экземпляра Автора в экземпляр издателя.
Репликация с использованием Replicator API Первоначально нам нужно создать экземпляр репликатора с помощью аннотации @Reference.
@Reference private Replicator replicator;
Далее нам нужно создать экземпляр сеанса, а затем передать этот объект в replicate API. Здесь я поделился примером фрагмента кода для создания экземпляра сеанса.
ResourceResolver resolver = request.getResourceResolver(); session = resolver.adaptTo(Session.class);
Наконец, нам нужно передать экземпляр сеанса и путь к API репликации. Здесь я поделился примером, который активирует/деактивирует веб-страницу на основе флага.
private void managePageActivation(Session session, String path,boolean isReplicate) { try { if (isReplicate) { replicator.replicate(session, ReplicationActionType.ACTIVATE, path); log.info("Page activated: ", path); } else { replicator.replicate(session, ReplicationActionType.DEACTIVATE, path); log.info("Page De-activated: ", path); } } catch (ReplicationException e) { log.info("Replication failed "+e.getMessage(), path); e.printStackTrace(); } }
В приведенной выше функции будут выполняться следующие действия,
В моем следующем посте я объясню, как активировать/деактивировать содержимое (ресурс и веб-страницу), прочитав путь из файла excel.
Я хотел бы услышать от вас ваши мысли и предложения, чтобы сделать его лучше.
Оригинал: “https://dev.to/jerinraj55551/replication-api-in-aem-adobe-experience-manager-405n”