----- Original Message -----
From: "David M. Lloyd" <david.lloyd(a)redhat.com>
To: jboss-as7-dev(a)lists.jboss.org
Sent: Tuesday, March 22, 2011 1:58:06 PM
Subject: Re: [jboss-as7-dev] Question about EAR's and Class Loading
On 03/22/2011 02:51 PM, David M. Lloyd wrote:
> On 03/22/2011 02:42 PM, Andrig Miller wrote:
>>> If OrderManagerEntities.jar is in the EAR's "lib" directory
(or
>>> the
>>> directory you have configured as such in application.xml) then the
>>> OrderManagerEJB.jar should be able to "see" it. If not then
you'll
>>> need
>>> an explicit "Class-Path" reference to it from your EJB JAR.
>>
>> No, my OrderManagerEntities.jar is not the EAR's "lib" directory,
>> its at the same level as the OrderManagerEJB.jar, and its listed as
>> an EJB module in the application.xml.
>>
>> This seems broken to me.
>
> As a rule, we are restricting visibility by default as much as the
> spec
> allows (which may mean certain behaviors are different from AS 5/6).
> So
> the question is really, is this contrary to spec? If so, it's a bug.
> That's what we need to answer.
Here's the relevant passage:
"Components in the EJB container may have access to the following
classes and resources. Portable applications must not depend on having
or not having access to these classes or resources.
[...]
* The content of any EJB jar files included in the same ear file.
* The content of any client jar files specified by the above EJB jar
files."
Thus it is correct to require an explicit Class-Path between EJB JARs
within an application.
Which I was not doing. I just combined the two EJB jars into one anyway, and that works
just fine. I successfully deployed it just now. So, one to see if it runs ;-).
Andy
--
- DML
_______________________________________________
jboss-as7-dev mailing list
jboss-as7-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-as7-dev