[jbossseam-issues] [JBoss JIRA] Commented: (JBSEAM-3262) Allow entity class component to be assigned stateless scope

Jacob Orshalick (JIRA) jira-events at lists.jboss.org
Sat Aug 16 15:07:58 EDT 2008


    [ https://jira.jboss.org/jira/browse/JBSEAM-3262?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12425351#action_12425351 ] 

Jacob Orshalick commented on JBSEAM-3262:
-----------------------------------------

I agree that this is useful, but I must agree with Pete, using STATELESS here seems quite awkward.  An entity holds state by definition creating a semantic clash.  Unscoped or dependent scope (especially from a Web Beans perspective) makes much more sense.

> 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: Dan Allen
>            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

        



More information about the seam-issues mailing list