[
https://jira.jboss.org/jira/browse/JBSEAM-3262?page=com.atlassian.jira.pl...
]
Dan Allen commented on JBSEAM-3262:
-----------------------------------
Seam's stateless scope is semantically identical to the stateless
scope in EJB3. It just *isn't implemented* that way currently.
Okay, I think the whole root of this discussion is intent vs actual, so in fact we are not
disagreeing, but debating about different things. You are understandably looking at it
from the scope's intent and I am looking at it from how it works today. Fair enough.
So, you are asking for a new scope. That new scope is the dependent
scope, which Web Beans introduces.
I am in complete agreement with you that I don't want to introduce a new scope in Seam
right now. We see eye-to-eye on that for sure, for all the reasons you stated.
Which is fine if you are a user, however for it to make its way into
core, it must be semantically consistent and correct, otherwise we end up with a big
incoherent mess ;-)
Amen. Given that we want to promote intent, not necessarily a opening in the
implementation, I understand the decision to take no action. I think this discussion was
very revealing and will serve as an eye-opening reference for the user regarding the
stateless scope.
Allow entity class component to be assigned stateless scope
-----------------------------------------------------------
Key: JBSEAM-3262
URL:
https://jira.jboss.org/jira/browse/JBSEAM-3262
Project: Seam
Issue Type: Bug
Components: Core
Affects Versions: 2.0.3.CR1, 2.1.0.A1
Reporter: Dan Allen
Assignee: Pete Muir
Priority: Minor
Fix For: 2.0.3.GA, 2.1.0.GA
Attachments: JBSEAM-3262-branch20.txt, JBSEAM-3262-trunk.txt
Original Estimate: 5 minutes
Remaining Estimate: 5 minutes
There is no reason for not allowing an entity class component to be assigned to the
stateless context like JavaBean and stateless session bean components. In fact, you could
argue that there is no difference between a JavaBean and an entity class based on the fact
that they are both vanilla Java classes.
There is a perfect use case for this feature that comes right from the heart of Seam.
When using the Home component, it is perfectly natural to create a component role for an
entity class that is wired to the newInstance property to be used as a prototype. For
instance, here is an example:
<component name="roundPrototype" class="org.open18.model.Round"
scope="stateless">
<property name="golfer">#{currentGolfer}</property>
<property name="date">#{currentDate}</property>
</component>
<framework:entity-home name="roundHome"
class="org.open18.action.RoundHome"
new-instance="#{roundPrototype}"/>
You don't want the roundPrototype to be stored in a scope since it is only used
internally to produce the instance managed by the roundHome component. However, with this
configuration, Seam throws an exception at startup.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira