Interceptor/Decorator injection point validation logic incorrect
----------------------------------------------------------------
Key: WELD-1002
URL:
https://issues.jboss.org/browse/WELD-1002
Project: Weld
Issue Type: Bug
Components: Interceptors and Decorators
Affects Versions: 1.1.2.Final
Reporter: Jozef Hartinger
Assignee: Jozef Hartinger
Fix For: 1.2.0.Beta1, 2.0.0.Alpha1
{code:JAVA}
for (InjectionPoint injectionPoint : serializableContextual.get().getInjectionPoints()) {
Bean<?> resolvedBean =
beanManager.resolve(beanManager.getBeans(injectionPoint));
validateInjectionPoint(injectionPoint, beanManager);
if (classBean.isPassivationCapableBean()) {
validateInjectionPointPassivationCapable(injectionPoint, resolvedBean,
beanManager);
}
}
{code}
*classBean.isPassivationCapableBean()* checks if the intercepted bean is passivation
capable. However, even if the interceptor bean is passivation capable, the interceptor is
not obliged to have passivation capable dependencies unless the intercepted bean declares
a *passivating scope*. The condition (note there are multiple occurences) should be based
on this check instead.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see:
http://www.atlassian.com/software/jira