Hi!
marc fleury wrote:
> |You're pretty much on target, except the second parameter should be the
> |EAR metadata and not a classloader. Then, the classloader is one aspect
> |of that metadata. This will allow the ContainerFactory to resolve
> |ejb-link's easily: check in "self" and all EJB JAR's that can be reached
> |by going to the EAR metadata.
>
> .... hmmmm
>
> the EAR metadata is something "supra-VM", the ClassLoader isn't.
No, each metadata object is VM-local (although each VM with a particular
app would have a copy), so there's no problem with associating a CL with
it.
> To me this is a VM service ( what I call CL service)... to pass the CL
> knowledge is indeed "meta-data" with respect to the application (in fact it
> is data that belongs to the container VM when it is associated with the
> ear).
Yes, hence the CL is just an aspect of the metadata about a running
application. Most of the metadata comes from XML files, but some could
just as well be runtime information that is added to the metadata
structure at runtime.
> |If we add the "system" notion, then the EAR metadata would have a parent
> |too, so the ejb-ref's that an ejb-link can resolve to is the transitive
> |closure of the entire system.
>
> he he.... rickard....
>
> "I want you to put your hands high up in the air and run around the run
> saying 20 times....etc etc"...
Ooooh.. did I use a too big word? *sigh* Get over it Marc.
> ok the "transitive closure" to the entire system is not interesting in
> scoping an application..
Of course it is. The transitive closure *is* the scope.
> An application is an application and the system can
> have many of these.
Yes, and the scope of an ejb-link name becomes the system and not the
local application in which it is used, hence it is the transitive
closure of the system it is a child of.
> Why should the assembler worry about the "target
> system"...
Because the assembler is assembling applications into a larger system.
It's just a way to partition an application. You *could* do the *exact*
same thing with one big EAR file. All we are doing is splitting it up
into pieces and relating those pieces together as a whole. For
maintenance reasons mainly.
> That the parent CL is the "System" CL is another matter entirely,
Nooooo, the system does not have a CL. The system does not have any
concrete substance, it is just the structure of the applications. The
nodes are the applications, but the links between them is the "system".
> why this should be seen at the XML layer is beyond me :)
We just use XML as a convenient way to denote how the applications
relate.
Use a LISP notation if you prefer that. It doesn't really matter.
/Rickard
--
Rickard �berg
Email: [EMAIL PROTECTED]