On 3/23/07, David Blevins <[EMAIL PROTECTED]> wrote:
On Mar 23, 2007, at 10:43 AM, Prasad Kashyap wrote: > I have a bean with one of the methods annotated by a > @ExcludeClassInterceptor. > > The bean itself has 2 class level interceptors, 1 defined as an > annotation (ClassInterceptor) and 1 specified in the DD > (DDInterceptor). > > With the default ordering, everything invokes as expected and the > method gets excluded from interception. > > However, if an attempt is made to change the ordering of the class > level interceptors, the @ExcludeClassInterceptor annotation seems to > be disregarded. The excluded method gets intercepted too. > > See dd snippet below. If the ordering is not changed (default > ordering), the ClassInterceptor executes before the DDInterceptor. > > <interceptor-binding> > <ejb-name>BasicStatelessIntercepted</ejb-name> > <interceptor-order> > <interceptor-class> > org.apache.openejb.test.interceptor.DDInterceptor > </interceptor-class> > <interceptor-class> > org.apache.openejb.test.interceptor.ClassInterceptor > </interceptor-class> > </interceptor-order> > </interceptor-binding> This one is a toughie without the full test case to look at. The interceptor-order is supposed to trump all other bindings at that same level or lower (low being package, high being method), but it should not affect the ordering of any higher bindings (in this case method level bindings). Put up a patch and I'll take a look.
https://issues.apache.org/jira/secure/attachment/12354131/Interceptor-v4.patch Cheers Prasad
-David
