[jboss-as7-dev] Deployment Chain/Service interaction
David M. Lloyd
david.lloyd at redhat.com
Thu Dec 2 15:55:04 EST 2010
On 12/02/2010 02:50 PM, Brian Stansberry wrote:
>> 3. Phase: "parse" -> "jboss.deployment.\"myapp-foo.war\".parse"
>>
>> In this phase, all descriptors which are available via the file system
>> are processed. This includes XML descriptors, manifest information,
>> etc. When processing of this phase is complete, all descriptors should
>> be parsed and stored in the DUP context.
>>
>> 4. Phase "dependencies" -> "jboss.deployment.\"myapp-foo.war\".dependencies"
>>
>> In this phase, the data collected is used to assemble the list of
>> dependencies and class path resource roots.
>
> I assume what you mean here are module dependencies, not service
> dependencies.
Yes. Well, it ends up being both: there's a service dependency from
j.d.source.modularize -> j.d.dependency.structure. This dependency is
used to create the module dependency (which is really a resource root
dependency as opposed to a module->module dependency).
>> Class-path dependencies on
>> other deployments will be added to this deployment's "modularize" phase
>> as MSC dependencies on the dependency deployments' "structure" phase.
>> When processing of this phase is complete, all the information necessary
>> to construct the module for this deployment is available.
>>
>
> Can annotations, which aren't read until the "modularize" phase, result
> in module dependencies?
No. See the section in "Missing Stuff" (#3) about this. Since you
can't read annotations until you have classloading, if you need to make
additional classloading changes, it has to happen in a second phase
where dependencies are recalculated, and the processor has to be aware
of that fact; in addition the proper module dependencies (and thus the
corresponding MSC dependencies) have to be established between the
deployments.
--
- DML
More information about the jboss-as7-dev
mailing list