[jboss-as7-dev] EAR Classloading documentation seems to be in contradiction.

Vimal Kansal vkansal at redhat.com
Tue Jul 19 00:55:56 EDT 2011


Thanks a lot Jaikiran. Also can you please elaborating/rephrasing the 
content in doco using the descriprion from .xsd, I think the one in .xsd 
is more clear.

On 19/07/2011 2:47 PM, Jaikiran Pai wrote:
> That looks like a typo in that Classloading doc. The jboss-ee.xsd is
> correct. I'll fix the doc later today when I've fully woken up.
>
> -Jaikiran
> On Tuesday 19 July 2011 10:11 AM, Vimal Kansal wrote:
>> Hi,
>>
>> It appears that EAR classloading documentation at
>> https://docs.jboss.org/author/display/AS7/Class+Loading+in+AS7 is in
>> contradiction with what "jboss-ee.xsd describes :
>>
>> AS7 Doc version
>> ==============
>>
>> <subsystem xmlns="urn:jboss:domain:ee:1.0">
>> <ear-subdeployments-isolated>false</ear-subdeployments-isolated>
>> </subsystem>
>>
>> By default this is set to true, which means that sub deployments will be
>> able to see other non-war sub-deployments classes by default (i.e. a war
>> deployment's module will have a dependency on all other ejb-jar
>> sub-deployments, however it will not have a module dependency on any
>> other war deployments).
>>
>> If this is set to false then no automatic dependencies are set up, they
>> must be setup manually with Class-Path entries, or by setting up
>> explicit module dependencies. This means that WARs (and other EJB jars)
>> do not have access to classes defined in an EJB jar unless an explicit
>> dependency is defined. The Java EE specification says that portable
>> applications should not rely on sub deployments having access to other
>> sub deployments that they do not have a Class-Path entry on, so portable
>> applications should always use Class-Path entry's to explicitly state
>> their dependencies.
>>
>> jboss-ee.xsd version
>> ==================
>> Flag indicating whether each of the subdeployments within a .ear can
>> access classes belonging to
>>                        another subdeployment within the same .ear. Setting
>> this to false, allows the subdeployments to
>>                        see classes belonging to other subdeployments
>> within the .ear.
>>                        For example:
>>                        myapp.ear
>>                         |
>>                         |--- web.war
>>                         |
>>                         |--- ejb1.jar
>>                         |
>>                         |--- ejb2.jar
>>
>>                        If the ear-subdeployments-isolated is set to false,
>> then the classes in web.war can access classes
>>                        belonging to ejb1.jar and ejb2.jar. Similarly,
>> classes from ejb1.jar can access classes from ejb2.jar
>>                        (and vice-versa).
>>
>>                        *Note that this flag, has no effect on the isolated
>> classloader of the .war file(s). i.e. irrespective
>>                        of whether this flag is set to true or false, the
>> .war within a .ear will have a isolated classloader
>>                        and other subdeployments within that .ear will not
>> be able to access classes from that .war. This is
>>                        as per spec*
>>
>> Thx
>>
>> Vimal
>>
>> _______________________________________________
>> jboss-as7-dev mailing list
>> jboss-as7-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/jboss-as7-dev
> _______________________________________________
> jboss-as7-dev mailing list
> jboss-as7-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/jboss-as7-dev



More information about the jboss-as7-dev mailing list