[jboss-dev-forums] [Design of EJB 3.0] - Re: PU Injection across JARs (unrelated DeploymentUnits)

ALRubinger do-not-reply at jboss.com
Wed Jan 14 02:49:38 EST 2009


An update.

Looks like the dependency issue I illustrated before is handled by the resolver; I must have misread something while debugging/testing.  The concept works.

Carlo has taken the prototype done in my patch and applied InterApplicationPersistenceUnitDependencyResolver in r82833.

However, this introduces regression in org.jboss.ejb3.test.persistenceunits.unit.MultipleEarTestCase.testBadEar.

The case is defined by https://jira.jboss.org/jira/browse/JBAS-5043, and shows that InterApplicationPersistenceUnitDependencyResolver is a JBoss-specific extension which is in violation w/ spec:

"EJB3 Persistence Specification 6.2.2" wrote : When referencing a persistence unit using the unitName annotation element or persistence-unit-name deployment descriptor element, the visibility scope of the persistence unit is determined by its point of definition. A persistence unit that is defined at the level of an EJB-JAR, WAR, or application client jar is scoped to that EJB-JAR, WAR, or application jar respectively and is visible to the components defined in that jar or war. A persistence unit that is defined at the level of the EAR is generally visible to all components in the application.

So "org.jboss.ejb3.test.hbm.unit.EntityUnitTestCase.testAll" is testing a spec violation. 

We can:

If we really want to test both cases, we can extract one out into a JBoss-specific test with its own server configs to explicitly set the appropriate PU Resolver.  Or we could just Unit Test the cases.

Which resolver do we want to use as a default?  "hbm" and the "persistenceunits.testBadEar" cases are mutually-exclusive.

S,
ALR




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

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4201600



More information about the jboss-dev-forums mailing list