[jboss-as7-dev] Question about EAR's and Class Loading

David M. Lloyd david.lloyd at redhat.com
Tue Mar 22 15:40:06 EDT 2011


On 03/22/2011 02:29 PM, Andrig Miller wrote:
> So, I got past the class not found exception for logging (I actually
> had to add org.jboss.logmanager export), since I was using the
> logmanager.

BTW we've been discussing this one - I think we're going to set it up so 
that manifest Dependencies at the EAR level are copied into their 
constituent deployments, since this is probably what users will expect 
will happen ("export" has certain potentially undesirable side-effects 
with regards to class-path references between deployment units).  So 
expect the "export" to be no longer necessary in Beta2.

> So, after getting past that, and successfully creating a module for
> MySQL and defining my data source, I know have another interesting
> issue with my ear file.
>
> I get the following:
>
> Caused by: java.lang.ClassNotFoundException:
> services.entities.Product from [Module
> "deployment.OrderManagerApp.ear.OrderManagerEJB.jar:main" from
> Service Module Loader]
>
> So, my ear is constructed in a fairly simple manner, and the same as
> it was for AS 5/6.  I have an OrderManagerEntities.jar that has the
> entities in them, including the services.entities.Product that its
> complaining about, and that jar is in the ear, but the stateless
> session beans in OrderManagerEJB.jar reference it.  It appears that
> there is not proper visibility to the entities in the other jar of
> the ear, and it cannot find it.

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.
-- 
- DML



More information about the jboss-as7-dev mailing list