[
https://issues.jboss.org/browse/CDI-136?page=com.atlassian.jira.plugin.sy...
]
Jozef Hartinger reopened CDI-136:
---------------------------------
Even though the change is applied in EDR1, there are still places in the Passivation
section where session beans are treated differently than managed beans. For example:
{quote}As defined by the EJB specification, all stateful session beans are passivation
capable. Stateless and singleton session beans are not passivation capable.{quote}
{quote}The container must guarantee that: all session beans are passivation capable
dependencies{quote}
{quote}If a managed bean which declares a passivating scope:{quote}
vs
{quote}If a stateful session bean:{quote}
{quote}If a bean which declares a passivating scope type, or any stateful session bean,
has a decorator or interceptor which is not a passivation capable dependency, the
container automatically detects the problem and treats it as a deployment problem.{quote}
This should be fixed consistently.
Assumption all @Stateful beans should be passivation capable
------------------------------------------------------------
Key: CDI-136
URL:
https://issues.jboss.org/browse/CDI-136
Project: CDI Specification Issues
Issue Type: Bug
Components: Beans, Java EE integration
Affects Versions: 1.0
Reporter: David Blevins
Assignee: Pete Muir
Fix For: 1.1.EDR1
Stateful session beans in transactions can't be passivated and shouldn't have
passivation requirements either, like request scope.
Stateful beans can be any scope. They are the Bertie Bott's Every Flavor Beans of
EJB. It's too big of a brush to say that passivation is always required. That's
the part we need to fix.
Stateful session beans that do passivate are pretty rare. They should be assumed to be
@NormalScope unless otherwise specified.
The user should be able to say if they want passivation validation on their stateful bean
and dependencies.
We should at a minimum change the related language of the spec to be "For every bean
which declares a passivating scope, and for every stateful session bean ***that requires
passivation***, " and discuss how to determine that an SFSB requires passivation.
From the EJB perspective this has always been a container detail, but we could have a
rule in CDI that states the checks are not enforced unless the bean class explicitly
implements java.io.Serializable. Alternatively we could make a generic @PassivationScoped
annotation for other architectures that have flexible scopes and support passivation
concepts.
--
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