Hi Matt, as the main project page says @Inject is the new new ;)
so wherever you use @Inject you should expect to get a new instance,
unless you've used a scoped binding like singleton - in which case you
will get the same instance for that binding (per-injector).
however, it looks like you just want to get the original instance to use in
the AOP call - you can get this via the "MethodInvocation" object that's
passed in to the method interceptor
for example, from
http://aopalliance.sourceforge.net/doc/org/aopalliance/intercept/MethodInterceptor.html
class TracingInterceptor implements MethodInterceptor {
Object invoke(MethodInvocation i) throws Throwable {
System.out.println("method "+i.getMethod()+" is called on "+i.getThis()+" with args "+i.getArguments());
Object ret=i.proceed();
System.out.println("method "+i.getMethod()+" returns "+ret);
return ret;
}
}
so there's no need to inject the original instance, as it's already available to you
HTH