Tengo problemas con una definición de punto de corte en Spring (versión 2.5.6). Estoy tratando de interceptar todas las llamadas a un método a una clase, a excepción de un método dado (algunosMétodo en el ejemplo a continuación).Spring AOP Pointcut sintaxis para AND, OR y NOT
<aop:config>
<aop:advisor
pointcut="execution(* x.y.z.ClassName.*(..)) AND NOT
execution(* x.y.x.ClassName.someMethod(..))"
/>
</aop:config>
Sin embargo, el interceptor también se invoca para algunosMétodo.
Luego probé esto:
<aop:config>
<aop:advisor
pointcut="execution(* x.y.z.ClassName.(* AND NOT someMethod)(..)))"
/>
</aop:config>
Pero esto no compila ya que no es una sintaxis válida (me da un BeanCreationException).
¿Alguien puede dar algún consejo?
¿Ha considerado escribir la lógica de aspecto con el estilo @AspectJ en su lugar? Es mucho más simple y más potente escribir la lógica de aspecto con Java. Especialmente si está usando Eclipse con el plugin AJDT. – Espen