[ 
https://issues.apache.org/jira/browse/AXIS2-2807?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Davanum Srinivas updated AXIS2-2807:
------------------------------------

    Assignee: Deepal Jayasinghe  (was: Davanum Srinivas)

> Error when using java.lang.reflect.Proxy classes in Axis2 web service method
> ----------------------------------------------------------------------------
>
>                 Key: AXIS2-2807
>                 URL: https://issues.apache.org/jira/browse/AXIS2-2807
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>          Components: adb
>    Affects Versions: 1.2
>         Environment: Linux cisd-hpws01 2.6.18.8-0.3-default #1 SMP Tue Apr 17 
> 08:42:35 UTC 2007 x86_64 x86_64 x86_64 GNU/Linux
> Java HotSpot(TM) 64-Bit Server VM 1.5.0_11-b03
>            Reporter: Bernd Rinn
>            Assignee: Deepal Jayasinghe
>         Attachments: BeanUtil_Proxy.patch, JamClassLoaderImpl_Proxy.patch
>
>
> When providing a java.lang.reflect.Proxy as the return value of a web service 
> method, I get the exception:
> org.apache.axiom.om.OMException: java.lang.ClassCastException: 
> org.codehaus.jam.internal.elements.UnresolvedClassImpl
>       at 
> org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:211)
>       at org.apache.axiom.om.impl.llom.OMNodeImpl.build(OMNodeImpl.java:315)
>       at 
> org.apache.axiom.om.impl.llom.OMElementImpl.build(OMElementImpl.java:608)
>       at 
> org.apache.axiom.om.impl.llom.OMElementImpl.detach(OMElementImpl.java:577)
>       at 
> org.apache.axiom.om.impl.llom.OMNodeImpl.setParent(OMNodeImpl.java:114)
>       at 
> org.apache.axiom.om.impl.llom.OMElementImpl.addChild(OMElementImpl.java:236)
>       at 
> org.apache.axiom.om.impl.llom.OMElementImpl.addChild(OMElementImpl.java:192)
>       at 
> org.apache.axis2.rpc.receivers.RPCUtil.processResponse(RPCUtil.java:195)
>       at 
> ch.systemsx.cisd.lims.server.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:149)
>       at 
> org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.receive(AbstractInOutSyncMessageReceiver.java:39)
>       at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:144)
>       at 
> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:279)
>       at 
> org.apache.axis2.transport.http.HTTPWorker.service(HTTPWorker.java:216)
>       at 
> org.apache.axis2.transport.http.server.AxisHttpService.doService(AxisHttpService.java:275)
>       at 
> org.apache.axis2.transport.http.server.AxisHttpService.handleRequest(AxisHttpService.java:184)
>       at 
> org.apache.axis2.transport.http.server.HttpServiceProcessor.run(HttpServiceProcessor.java:74)
>       at 
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
>       at 
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
>       at java.lang.Thread.run(Thread.java:595)
> Caused by: java.lang.ClassCastException: 
> org.codehaus.jam.internal.elements.UnresolvedClassImpl
>       at 
> org.codehaus.jam.internal.JamClassLoaderImpl.loadClass(JamClassLoaderImpl.java:96)
>       at org.codehaus.jam.JamClassIterator.nextClass(JamClassIterator.java:68)
>       at org.codehaus.jam.JamClassIterator.next(JamClassIterator.java:88)
>       at 
> org.apache.axis2.databinding.utils.BeanUtil.getPullParser(BeanUtil.java:89)
>       at 
> org.apache.axis2.databinding.utils.reader.ADBXMLStreamReaderImpl.processProperties(ADBXMLStreamReaderImpl.java:926)
>       at 
> org.apache.axis2.databinding.utils.reader.ADBXMLStreamReaderImpl.next(ADBXMLStreamReaderImpl.java:780)
>       at org.apache.axis2.util.StreamWrapper.next(StreamWrapper.java:68)
>       at 
> org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:125)
>       ... 18 more
> The problem essentially seems to be that the leading $ of the class name 
> (e.g. '$Proxy5') confuses the annogen and adb library. I found two problems, 
> one in org.codehaus.jam.internal.JamClassLoaderImpl and one in 
> org.apache.axis2.databinding.utils.BeanUtil. I found workarounds to the 
> problems by explicitely checking for Proxy classes. I am actually not sure 
> that this is the right way to fix the problem. Anyway, I'll attach them to 
> this issue for reference.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to