我正在尝试使用spring http消息转换器,但是,我无法让它工作。
@Pointcut("within(org.springframework.http.converter.xml.MarshallingHttpMessageConverter)")
public void converterPointcut() {
}
@Pointcut("execution(* *(..))")
public void converterMethodPointcut() {
}
@Around("converterPointcut() && converterMethodPointcut()")
public Object aroundConverter(ProceedingJoinPoint iJoinPoint) {
Object aProceed = null;
try {
aProceed = iJoinPoint.proceed();
} catch (Throwable anException) {
anException.printStackTrace();
}
return aProceed;
}
这里有什么不对吗?
答案 0 :(得分:1)
a)使用within
,你只是建议MarshallingHttpMessageConverter
课程的方法,你确定这是你想要的吗?
b)编织一个你需要的库类set up load time weaving 或者通过aspectj编译器运行spring jar(哎呀,不要那样做)。你有加载时间编织设置吗?
c)定义无法让它发挥作用:会发生什么,什么不会发生?
更新:我认为您正在尝试解决错误的问题。不要使用AspectJ,只需扩展类(none of the methods are final)和register the extended class as HttpMessageConverter