On 3 May 2010 18:27, Stuart McCulloch <[email protected]> wrote: > On 3 May 2010 18:11, Rickard Öberg <[email protected]> wrote: > >> On 2010-05-03 17.50, Niclas Hedhman wrote: >> >>> Rickard, >>> >>> I have been trying to get the Google App Engine support up. And using >>> the MapEntityStore prescribes the LockingAbstractComposite in the >>> locking library. That composite in turn uses the >>> ReentrantReadWriteLock as a mixin implementation, which Qi4j runtime >>> wants to bytecode enhance via CGLib. The enhanced class uses the same >>> package name as the original, and GAE has strict rules on not allowing >>> classes in certain package names. Hence this fails. >>> >>> I see 2 solutions to this; >>> >>> * Let the enhancer know about special handling of ^java.* package >>> names and stick the result in our own namespace. >>> >> >> I think this should work. IIRC there's a hook for the namespace handling, >> so it shouldn't be that difficult. > > > another trick is to prefix the proxy name with $ if it's in the java.* > namespace, eg: > > java.lang.Runnable ---> $java.lang.Runnable$qi4j > > vs. > > com.foo.Bar ---> com.foo.Bar$qi4j > > this avoids any clashes that might happen if you push all java.* proxies > under one package >
^ and it also means you can still decode the original FQN from the proxy name > >> >>> * Change the Lock library to not use the RRWL directly in this fashion. >>> >>> WDYT? >>> >>> Cheers >>> >> _______________________________________________ >> qi4j-dev mailing list >> [email protected] >> http://lists.ops4j.org/mailman/listinfo/qi4j-dev >> > > -- > Cheers, Stuart > -- Cheers, Stuart
_______________________________________________ qi4j-dev mailing list [email protected] http://lists.ops4j.org/mailman/listinfo/qi4j-dev

