On Aug 22, 2010, at 4:24 PM, Karan Malhi wrote:

> On Sun, Aug 22, 2010 at 7:23 PM, David Blevins <[email protected]>wrote:
> 
>> 
>> On Aug 22, 2010, at 4:19 PM, Karan Malhi wrote:
>> 
>>> I want to help running the tck with openejb. How should I proceed with
>> it,
>>> any help on this would be great.
>> 
>> You mean like an OpenEJB tck setup?
>> 
> 
> Yes

That could be cool if people are willing to work on it.  Will file a jira w/ 
Infra for a repo.


-David


>> 
>>> On Thu, Aug 5, 2010 at 7:44 PM, David Jencks <[email protected]>
>> wrote:
>>> 
>>>> Hi Jon,
>>>> So far this change seems to be working fine.
>>>> 
>>>> Looking forward to your eyes on the tck:-)
>>>> 
>>>> thanks
>>>> david jencks
>>>> 
>>>> On Aug 5, 2010, at 4:39 PM, Jonathan Gallimore wrote:
>>>> 
>>>>> Hi David,
>>>>> 
>>>>> I did suspect there would an issue with which classloader the proxy got
>>>>> attached to at some point when I wrote this :-). I think your change is
>>>>> fine, I can't see any problems with it. Does fix the TCK now? If not,
>> I'm
>>>>> happy to try and help out more. The necessary paperwork is in so I
>> should
>>>> be
>>>>> able to start having a go with the TCK.
>>>>> 
>>>>> Jon
>>>>> 
>>>>> On Thu, Aug 5, 2010 at 6:39 AM, David Jencks <[email protected]>
>>>> wrote:
>>>>> 
>>>>>> It would be really really great to have more eyes on the tck.
>>>>>> 
>>>>>> This particular problem seems to be due to an interaction between
>>>> geronimo
>>>>>> and openejb.  In geronimo the classloader that the proxy is attached
>> to
>>>> is a
>>>>>> wrapper for the osgi bundle and doesn't actually load any classes
>>>> itself.
>>>>>> So once the proxy is attached to that classloader it becomes
>> completely
>>>>>> inaccessible.
>>>>>> 
>>>>>> I'm changing the code involved to use the original proxied class's
>>>>>> classloader and protection domain.  So far I don't see any problems in
>>>>>> geronimo or openejb.
>>>>>> 
>>>>>>         Class<?> cls = (Class<?>) unsafe.defineClass(proxyName,
>>>>>> proxyBytes, 0, proxyBytes.length, clsToProxy.getClassLoader(),
>>>>>> clsToProxy.getProtectionDomain());
>>>>>> 
>>>>>> I've opened https://issues.apache.org/jira/browse/OPENEJB-1321 to
>>>> provide
>>>>>> a hook for any problems this may cause.  I'd really appreciate some
>>>> review
>>>>>> and informed criticism.
>>>>>> 
>>>>>> many thanks
>>>>>> david jencks
>>>>>> 
>>>>>> On Aug 4, 2010, at 12:22 PM, David Blevins wrote:
>>>>>> 
>>>>>>> Thinking it might be good to get more of us setup in the TCK.
>>>> Currently,
>>>>>> Geronimo is the only one with a TCK setup, but it is better than
>>>> nothing.
>>>>>>> 
>>>>>>> With all the EJB 3.1 work there of course comes a ton of TCK work
>>>> related
>>>>>> to getting that functionality to be spec compliant in the pass/fail
>>>> sense.
>>>>>> As Geronimo is the only one with a TCK setup it translates to Geronimo
>>>>>> getting stuck having to finish the EJB 3.1 development work.  Seems to
>>>> make
>>>>>> the most sense to get the people doing EJB 3.1 feature involved in
>>>> ensuring
>>>>>> it passes the TCK.
>>>>>>> 
>>>>>>> Any committer can request Java EE 6 TCK access via singing faxing or
>>>>>> emailing ([email protected]) this NDA:
>>>>>>> 
>>>>>>> http://www.apache.org/jcp/ApacheNDA.pdf
>>>>>>> 
>>>>>>> 
>>>>>>> Anyway, here is the issue that prompted me to send this note.
>> Related
>>>> to
>>>>>> @LocalBean support.  David J. poking at it currently, but any help is
>>>>>> welcome.  There will definitely be many more like this.  Having the
>> most
>>>>>> people with access to the TCK as possible is probably a very good
>> thing.
>>>>>>> 
>>>>>>> 
>>>>>>> Caused by: java.lang.LinkageError: loader (instance of
>>>>>> org/apache/xbean/osgi/bundle/util/BundleClassLoader): attempted
>>>> duplicate
>>>>>> class definition for name: "com/moon/sometest/SomeBean$LocalBeanProxy"
>>>>>>>    at sun.misc.Unsafe.defineClass(Native Method)
>>>>>>>    at
>>>>>> 
>>>> 
>> org.apache.openejb.util.proxy.LocalBeanProxyGeneratorImpl.createProxy(LocalBeanProxyGeneratorImpl.java:65)
>>>>>>>    at
>>>>>> 
>>>> 
>> org.apache.openejb.util.proxy.LocalBeanProxyGeneratorImpl.createProxy(LocalBeanProxyGeneratorImpl.java:48)
>>>>>>>    at
>>>>>> 
>>>> 
>> org.apache.openejb.util.proxy.LocalBeanProxyFactory.newProxyInstance(LocalBeanProxyFactory.java:27)
>>>>>>>    at
>>>>>> 
>>>> 
>> org.apache.openejb.core.ivm.EjbHomeProxyHandler.createProxy(EjbHomeProxyHandler.java:139)
>>>>>>>    at
>>>>>> 
>>>> 
>> org.apache.openejb.core.ivm.EjbHomeProxyHandler.create(EjbHomeProxyHandler.java:286)
>>>>>>>    at
>>>>>> 
>>>> 
>> org.apache.openejb.core.ivm.EjbHomeProxyHandler._invoke(EjbHomeProxyHandler.java:169)
>>>>>>>    at
>>>>>> 
>>>> 
>> org.apache.openejb.core.ivm.BaseEjbProxyHandler.invoke(BaseEjbProxyHandler.java:282)
>>>>>>>    at $Proxy52.create(Unknown Source)
>>>>>>>    at
>>>>>> 
>>>> 
>> org.apache.openejb.core.ivm.naming.BusinessLocalBeanReference.getObject(BusinessLocalBeanReference.java:34)
>>>>>>>    at
>>>>>> 
>>>> 
>> org.apache.openejb.core.ivm.naming.Reference.getContent(Reference.java:40)
>>>>>>>    at
>>>>>> 
>> org.apache.xbean.naming.context.ContextUtil.resolve(ContextUtil.java:61)
>>>>>>>    at
>>>>>> 
>>>> 
>> org.apache.xbean.naming.context.AbstractContext.lookup(AbstractContext.java:116)
>>>>>>>    at
>>>>>> 
>>>> 
>> org.apache.xbean.naming.context.AbstractContext.lookup(AbstractContext.java:605)
>>>>>>>    at
>>>>>> 
>>>> 
>> org.apache.geronimo.openejb.DeepBindableContext$ContextWrapper.lookup(DeepBindableContext.java:97)
>>>>>>>    at
>>>>>> 
>>>> 
>> org.apache.openejb.core.ivm.naming.IntraVmJndiReference.getObject(IntraVmJndiReference.java:39)
>>>>>>>    at
>>>>>> 
>>>> 
>> org.apache.openejb.core.ivm.naming.Reference.getContent(Reference.java:40)
>>>>>>> 
>>>>>>> 
>>>>>>> -David
>>>>>>> 
>>>>>> 
>>>>>> 
>>>> 
>>>> 
>>> 
>>> 
>>> --
>>> Karan Singh Malhi
>> 
>> 
> 
> 
> -- 
> Karan Singh Malhi

Reply via email to