Hmm, quick question, do you know of a reason why this ould not work for Struts, I did it and for some reason I get an error
org.apache.struts.action.RequestProcessor - ERROR - No action instance for path /selectTiles could be created this class was moved to shared. Thansk, Oleg On Mon, 21 Feb 2005 14:39:52 -0600, QM <[EMAIL PROTECTED]> wrote: > On Mon, Feb 21, 2005 at 11:21:01AM -0800, Oleg wrote: > : Well regarding #1 from what I understand the class in webapp web-inf > : will take priority, however, I can see how #2 can be a problem, but, > : does it only work one way? Meaning a class in sared/classes will not > : see webapp/web-inf/classes, so down the hierarchy, however, it will > : work just fine going up, so class in webapp will see classes in > : shared? > > Correct -- the per-webapp classloader is the child of the shared/lib > classloader. (This is an oversimplification but please bear with me.) > > Really, there are more than two classloaders involved, forming several > parent/child relationships in a hierarchy... > > Try to think of it as the GoF Chain of Responsiblity pattern: when the > per-webapp classloader can't find a class, it delegates (passes the > request) to its parent. This keeps going until you hit a classloader > that can successfully load the class, or until the innermost classloader > -- which doesn't delegate to anyone else -- gives up and says there's no > such class. > > Going the other way thus isn't possible: that innermost (parent) > classloader can't see what its children see, and so on. If a class > under shared/lib needs access to (depends on) a class in a child > classloader, it will never find it, and the system throws a > NoClassDefFoundError. > > It's for a similar reason one webapp can't see another webapp's classes: > they only have a relationship with their parent classloader, and not > that of their siblings. > > -QM > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
