のインスタンスを作成するレガシー ライブラリがありますBeanProxy
。残念ながら、この実装には修正したい欠陥があります。パッチが適用されたライブラリで作業を開始したくないので、構成をラップする Aspect を作成し、変更されたサブタイプBeanProxy
のインスタンスを返したいと考えました。BeanProxy
次のアスペクトを作成しましたが、新しいインスタンスBeanProxy
が作成されるたびに正しく織り込まれ、呼び出されます。
@Aspect
public class CWebBeanProxyInjectingAspect {
@Pointcut("execution(public flex.messaging.io.BeanProxy.new(..))")
void createBeanProxy() {}
@Around("createBeanProxy()")
public Object createAlternateBeanProxy(final ProceedingJoinPoint pjp) throws Throwable {
System.out.println("createAlternateBeanProxy");
final Object result = pjp.proceed();
System.out.println(result);
return result;
}
}
残念ながらresult
、常にnull
...私は何を間違っていますか? 何を変更する必要がありますか? AspectJ LoadTimeWeaving と spring-instrument-3.1.1.RELEASE.jar をエージェントとして使用していることに言及する必要があります。