On May 10, 2011, at 11:01 PM, David Blevins wrote:

> 
> On May 10, 2011, at 6:57 PM, David Blevins wrote:
> 
>> I have a hunch that eagerly loading annotations *and* enums might do the 
>> trick.  Going to see if that is the case as that might give us more 
>> information about the issue and potentially a workaround that might be one 
>> we can stomach.  Loading all the classes eagerly is not ok, but eagerly 
>> loading annotation and enum classes might be livable till we can find the 
>> real issue.
> 
> Looks like eagerly loading all the application's annotations and enums twice 
> does the trick.  The first time fails with the LinkageError and the second 
> time works.
> 
> Currently performing some magic in debugger with evaluating expressions to 
> get this accomplished.  Not going to codify it just yet, but if we wanted 
> this as a hack as an implemented workaround we'd need to use ASM to scrape 
> and get a list of all annotation and enum classes, put that data in perhaps a 
> gbean that is setup to load on app startup with a dependency on the app 
> classloader, then have that gbean do the double load.  The xbean-finder code 
> doesn't currently have the ability to list annotations and enums -- we'd have 
> to add it or scrape again.
> 
> Hopefully we can find the real issue and not have to do that.

So, I swapped a bit more state back in (how quickly I forget). ClassFile 
transformation driven by OpenJPA is causing this error. I re-opened our 
original Jira. I created an Equinox bug report and they've created a patch, 
which seems to fix our problem. 

There will be the question of how we pick up the fix within Geronimo. The patch 
is on Equinox 3.7 -- something we probably want to pick up anyway.

--kevan




Reply via email to