WebObjects classloader fun.
WebObjects classloader fun.
- Subject: WebObjects classloader fun.
- From: Q <email@hidden>
- Date: Fri, 30 Mar 2007 12:51:13 +1000
Does anyone know much about how webobjects uses the classloader and how the _NSUtilities class cache is initialized and used?
I have been playing with different ways to hook the GroovyClassLoader into the classloader chain prior to launching a WO application (so that you can use uncompiled .groovy files in a running application), but it appears that _NSUtilities has a static initialiser that pulls in and caches classes rather than asking the current thread context classloader for them when needed. The result of which is twofold, firstly webobjects thinks that the inheritance tree of my objects is wrong because it's comparing the cached version of, say, WOComponent with my object instead of asking the context classloader for WOComponent (which would now return a different class object after replacing the classloader chain) The second issue is that because _NSUtilities caches the classes instead of asking the classloader for them there is no obvious way to hook into the class resolution process to enable the dynamic recompiling of existing or newly created objects (rapidturnaround style).
I am thinking that I may be able to use ERXPatcher to partly do what I need, but I thought it best to ask for some insight before I go down that road.
Any insight would be much appreciated.
-- Seeya...Q
Quinton Dolan - email@hidden Gold Coast, QLD, Australia Ph: +61 419 729 806 |
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden