Adobe Experience Manager (AEM) — популярная система управления контентом, используемая многими разработчиками и маркетологами. Одной из его важнейших функций является средство проверки ссылок, которое помогает убедиться в том, что все ссылки в системе действительны и функциональны. Однако могут возникнуть ситуации, когда вам потребуется временно или навсегда отключить AEM Link Checker. В этой статье мы рассмотрим несколько способов отключения средства проверки ссылок AEM, сопровождая их примерами кода.
Метод 1: использование конфигурации OSGi
Проверку связи AEM можно отключить с помощью конфигурации OSGi. Выполните следующие действия:
Шаг 1. Войдите в свой экземпляр AEM в качестве администратора.
Шаг 2. Перейдите к консоли Felix, открыв URL-адрес http://localhost:4502/system/console/configMgr .
Шаг 3. Найдите «Link». Checker Transformer» в поле поиска конфигурации.
Шаг 4. Откройте конфигурацию и снимите флажок «Включено».
Шаг 5. Сохраните конфигурацию.
Пример кода:
import org.apache.felix.scr.annotations.*;
import org.osgi.service.component.*;
@Component(immediate = true, metatype = true, label = "Link Checker Transformer")
public class LinkCheckerTransformer implements org.apache.sling.rewriter.Transformer {
@Property(label = "Enabled", description = "Enable or disable the link checker.", boolValue = false)
private static final String ENABLED = "enabled";
// Rest of the code for the transformer goes here...
}
Метод 2: применение пользовательской конфигурации проверки ссылок
Другой подход заключается в создании пользовательской конфигурации проверки ссылок, которая отключает функцию проверки ссылок. Вот как это можно сделать:
Шаг 1. Создайте новую фабрику конфигураций OSGi, перейдя к http://localhost:4502/system/console/configMgr и выполнив поиск «Конфигурации проверки ссылок».
Шаг 2. Нажмите «Создать» и укажите уникальное имя для вашей пользовательская конфигурация.
Шаг 3. Измените свойства следующим образом:
- Включить проверку ссылок: снимите флажок.
- Сопоставления средства проверки ссылок: удалите все сопоставления.
Шаг 4. Сохраните конфигурацию.
Пример кода:
import org.apache.felix.scr.annotations.*;
import org.osgi.service.component.*;
@Component(immediate = true, metatype = true, label = "Custom Link Checker Configuration")
public class CustomLinkCheckerConfig implements org.apache.sling.commons.html.HtmlParserFactory {
@Property(label = "Enable Link Checker", description = "Enable or disable the link checker.", boolValue = false)
private static final String ENABLE_LINK_CHECKER = "enableLinkChecker";
@Property(label = "Link Checker Mappings", description = "Custom link checker mappings.", value = {})
private static final String LINK_CHECKER_MAPPINGS = "linkCheckerMappings";
// Rest of the code for the custom configuration goes here...
}
Метод 3: программное изменение конфигурации OSGi
Вы также можете отключить AEM Link Checker программно, изменив конфигурацию OSGi с помощью кода. Вот пример:
Пример кода:
import org.apache.felix.scr.annotations.*;
import org.osgi.service.component.*;
import org.osgi.service.cm.Configuration;
import org.osgi.service.cm.ConfigurationAdmin;
@Component(immediate = true)
public class LinkCheckerDisabler {
@Reference
private ConfigurationAdmin configAdmin;
@Activate
protected void activate() throws Exception {
Configuration config = configAdmin.getConfiguration("org.apache.sling.jcr.jackrabbit.server.impl.linkchecker.LinkCheckerTransformerFactory");
config.getProperties().put("enabled", false);
config.update();
}
// Rest of the code for the disabler goes here...
}
Иногда необходимо отключить AEM Link Checker, и в этой статье описано несколько способов сделать это. Независимо от того, используете ли вы конфигурацию OSGi, пользовательскую конфигурацию или программно изменяете конфигурацию, теперь вы можете отключить Link Checker в соответствии с вашими конкретными требованиями. Выберите метод, который лучше всего соответствует вашим потребностям, и обеспечьте бесперебойную работу с AEM.