Я работаю с Java-кодом в AEM .
Мы используем Maven, а в pom.xml есть все необходимые зависимости и aspectj-maven-Плагин
Я подготовил аспект с помощью pointcut:
package org.xxx.aop.aspects;
import javax.jcr.Node;
import org.apache.sling.api.SlingHttpServletRequest;
import org.aspectj.lang.*;
import org.aspectj.lang.annotation.*;
import org.slf4j.*;
@Aspect
public class NodeAspect {
private final Logger LOG = LoggerFactory.getLogger(NodeAspect.class);
@Pointcut("execution(public * javax.jcr.Node.*(..)")
public void jcrNodeAccess() {}
@Around("jcrNodeAccess()")
public Object jcrNodeMethodCall(ProceedingJoinPoint thisJoinPoint) throws Throwable {
LOG.info("--- LOG NodeAspect ---");
Object result = thisJoinPoint.proceed();
// some code
// ..
return result;
}
Но когда я установил свой пакет в AEM, мой аспект не работает.
Может быть, мой аспект мне нужно будет активировать?
Может быть, эта проблема связана с поведением OSGI (Феликс) в AEM ?
Пожалуйста, предоставьте мне идеи, как это исправить