J'essaie de faire fonctionner les services Apache CXF JAX-RS avec Spring AOP. J'ai créé une classe simple d'enregistrement:Services REST Apache CXF avec Spring AOP
public class AOPLogger {
public void logBefore(){
System.out.println("Logging Before!");
}
}
Ma configuration Spring (beans.xml):
<aop:config>
<aop:aspect id="aopLogger" ref="test.aop.AOPLogger">
<aop:before method="logBefore" pointcut="execution(* test.rest.RestService.*(..))"/>
</aop:aspect>
</aop:config>
<bean id="aopLogger" class="test.aop.AOPLogger"/>
Je reçois toujours un NPE dans RestService lorsqu'un appel est fait à une méthode getServletRequest() , qui a:
return messageContext.getHttpServletRequest();
Si je supprime la configuration ou un commentaire aop dehors de mon beans.xml, tout fonctionne très bien. Tous mes services de repos étendent test.rest.RestService (qui est une classe) et appellent getServletRequest(). J'essaie juste de faire fonctionner l'AOP en me basant sur l'exemple de la documentation de CXF JAX-RS. Qu'est-ce que je fais mal?