That's a nice stab at an explanation, but it can't be the whole story.  Here's 
a session-scoped component that's been working just fine in my application for 
months now:
@Name("replogSession")
  | @Startup
  | @Scope(SESSION)
  | public class ReplogSession {
  | ...
  |    @In(create=true)
  |    private transient EntityManager entityManager;
  | 
  |    @In
  |    private Replog replogApplication; // local interface of the stateful 
session bean above
  | 
  | ...
  |    public Changeset createChangeset (String description) {
  | ...
  |       Query query = entityManager.createQuery("from RepObject ro where 
ro.replicatedChangeset is null and " +
  |               "not exists (from RepObject ro2 where ro2.replicatedChangeset 
is not null " +
  |               "and ro2.version = ro.version and ro2.replicatedKey = 
ro.replicatedKey)");
  |       List<RepObject> list = query.getResultList();
  | ...
  | }
That's a plain old session-scoped POJO that has an EntityManager injected into 
it with @In.  Works just great!  I've never needed to use @PersistenceContext 
anywhere else in my app.  And I have an EntityManager Seam component in my 
resources/WEB-INF/components.xml:
<component name="entityManager" 
class="org.jboss.seam.core.ManagedPersistenceContext">
  | <property 
name="persistenceUnitJndiName">java:/entityManagerFactory</property>
  | </component>
So why doesn't Seam's application scope support injecting that EntityManager 
with @In, when Seam's session scope does support it?

Cheers!
Rob

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3967588#3967588

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3967588
_______________________________________________
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to