This is a debatable chance, but the goal is to somehow make it possible for 
integrators to be less strict with this particular spec rule.

   http://svn.apache.org/viewvc?view=revision&revision=982715

Basically, we opted not to strictly enforce this as the 
invocationContext.proceed() method throws Exception so it forces all 
interceptors to needlessly catch and convert that checked exception to a 
runtime exception to meet the spec requirements:

        @PostConstruct
        public void construct(InvocationContext context) {
            try {
                context.proceed();
            } catch (Exception e) {
                throw new RuntimeException(e);
            }
        }

The result is that if a callback exception is thrown by the bean, it will end 
up being wrapped and re-thrown N number of times.

Not terrible, but it is a bit of bad API.

Anyway, if anyone sees a better way to do this I'm open to solutions.  I just 
went with simple and direct so it would be easily revertible and changeable if 
we wanted to do something different.


-David

Reply via email to