[cdi-dev] [JBoss JIRA] (CDI-360) NormalScoped Bean<T> should all be forced to implement PassivationCapable

Oliver Gierke (JIRA) jira-events at lists.jboss.org
Mon Mar 25 07:17:42 EDT 2013


    [ https://issues.jboss.org/browse/CDI-360?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12762892#comment-12762892 ] 

Oliver Gierke commented on CDI-360:
-----------------------------------

Under which circumstances do you think an {{@ApplicationScoped}} bean needs to be serialized? I don't think it makes sense to strongly impose serializability on application components. On the other hand: with this ticket, components that are {{@Dependend}} scoped would not be forced to be serializable although it's probably even more likely they and up in a scope requiring serialization.
                
> NormalScoped Bean<T> should all be forced to implement PassivationCapable
> -------------------------------------------------------------------------
>
>                 Key: CDI-360
>                 URL: https://issues.jboss.org/browse/CDI-360
>             Project: CDI Specification Issues
>          Issue Type: Bug
>          Components: Beans
>    Affects Versions: 1.0
>            Reporter: Mark Struberg
>            Priority: Blocker
>
> When serializing a Contextual Reference of a CDI bean, we need to transport over it's proxy. This proxy internally need to serialize it's Bean<T>. But this is only really possible if the Bean implements PassivationCapable. Any attempt to use the type + qualifier is doomed to fail, as this still leaves room for clashes. E.g. if an Extension registers multiple Bean<T> with Object.class and @Default qualifier but a different name (kind of Spring XML style).
> 6.6.2 comes most close to this requirement, though it doesn't really define that all NormalScoped beans really need to implement PassivationCapable. At least it seems to point into the right direction - but it's nowhere near a clear definition.
> We should force Containers to check whether Bean<T> which serve a NormalScoped scope do implement PassivationCapable.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the cdi-dev mailing list