Ales Justin [http://community.jboss.org/people/alesj] replied to the discussion

"Implementing a non-flat deployment for Weld Integration"

To view the discussion, visit: http://community.jboss.org/message/542429#542429

--------------------------------------------------------------
> So, these features that we need to support provide the arguments as to why we 
> should mirror the ClassLoader structure instead of implementing this from 
> scratch.
Yeah, re-inventing this would be a nightmare. ;-)

> Pete also pointed out an important behaviour that should be fixed. In a 
> nutshell, all archives visible to a BDA are scanned. In the given scenario:  
> ejb.jar A reaches lib2. In lib2 we have a ClassPath reference in the manifest 
> to lib3, which is not in the classpath of the server... it is somewhere in 
> the filesystem. In this case, for what I understood from Pete's explanations, 
> lib3 is going to be scanned for CDI stuff. But this shouldn't happen, so we 
> would also need a way of differentiating lib3 from lib2. I'll stop my 
> explanation here, as I think Pete can fill in the blanks and explain this 
> much better :-)
I guess this is the discussion we already had once: actual Weld deployment vs. 
static "library"?

> So, Ales, how do you think this should be done? I think we have plenty of 
> code in the ClassPools that do exactly that, mirror the ClassLoader structure 
> in a way that allows us to find the classes and xml files in META-INF dirs. 
> Maybe there is a way of reusing part of the ClassPool code to do this?
It is similar in a way, but I don't see how you would be able to re-use it.

In new CL layer it's one Module per ClassLoader and vice versa.
Each Module / ClassLoader belongs to some Domain.
So, we would have to keep track of Modules and how are they wired hierarchicaly 
and grouped by Domain.
A Module can see any ancestor Module and all Modules in its Domain and ancestor 
Domains.
I would differentiate between application's explicit Modules and what it can 
reach,
hence you don't scan yourself too deep; e.g. into default Domain.

This way it should be also easy to support a notin if libraries as long as they 
are deployed the same way / over new CL layer.

--------------------------------------------------------------

Reply to this message by going to Community
[http://community.jboss.org/message/542429#542429]

Start a new discussion in JBoss Microcontainer Development POJO Server at 
Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2116]

_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to