cxf-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Arul Dhesiaseelan <a...@fluxcorp.com>
Subject Re: Marshalling Error caused due to ArrayList classcast exception
Date Mon, 04 Aug 2008 23:09:37 GMT
Thanks Dan for your help. Adding asm to the classpath did the trick.

-Arul

Daniel Kulp wrote:
> Do you have an asm-2.x or asm-3.x jar on the classpath?   I think this is one 
> of the use cases where it's completely required.   If so, can I see the 
> complete SEI interface with all the annotations?   You don't have it set 
> to "BARE" mode, do you?
>
> Dan
>
>
> On Monday 04 August 2008 1:34:27 pm Arul Dhesiaseelan wrote:
>   
>> Hello,
>>
>> I get the following marshaling error when invoking my service. I am
>> using CXF 2.1.1.
>>
>> INFO: Interceptor has thrown exception, unwinding now
>> org.apache.cxf.interceptor.Fault: Marshalling Error: java.util.ArrayList
>>     at
>> org.apache.cxf.jaxb.JAXBEncoderDecoder.marshalWithBridge(JAXBEncoderDecoder
>> .java:249) at
>> org.apache.cxf.jaxb.io.DataWriterImpl.write(DataWriterImpl.java:87) at
>> org.apache.cxf.interceptor.AbstractOutDatabindingInterceptor.writeParts(Abs
>> tractOutDatabindingInterceptor.java:113) at
>> org.apache.cxf.interceptor.BareOutInterceptor.handleMessage(BareOutIntercep
>> tor.java:68) at
>> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChai
>> n.java:221) at
>> org.apache.cxf.interceptor.OutgoingChainInterceptor.handleMessage(OutgoingC
>> hainInterceptor.java:74) at
>> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChai
>> n.java:221) at
>> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationO
>> bserver.java:78) at
>> org.apache.cxf.transport.http_jetty.JettyHTTPDestination.serviceRequest(Jet
>> tyHTTPDestination.java:278) at
>> org.apache.cxf.transport.http_jetty.JettyHTTPDestination.doService(JettyHTT
>> PDestination.java:252) at
>> org.apache.cxf.transport.http_jetty.JettyHTTPHandler.handle(JettyHTTPHandle
>> r.java:70) at
>> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
>>     at
>> org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCol
>> lection.java:206) at
>> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>>     at org.mortbay.jetty.Server.handle(Server.java:320)
>>     at
>> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
>>     at
>> org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java
>> :842) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648) at
>> org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211) at
>> org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380) at
>> org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395
>> ) at
>> org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:
>> 450) Caused by: javax.xml.bind.MarshalException
>>  - with linked exception:
>> [java.lang.ClassCastException: java.util.ArrayList]
>>     at
>> com.sun.xml.bind.v2.runtime.BridgeAdapter._adaptM(BridgeAdapter.java:118)
>>     at
>> com.sun.xml.bind.v2.runtime.BridgeAdapter.adaptM(BridgeAdapter.java:105)
>>     at
>> com.sun.xml.bind.v2.runtime.BridgeAdapter.marshal(BridgeAdapter.java:81)
>>     at com.sun.xml.bind.api.Bridge.marshal(Bridge.java:107)
>>     at com.sun.xml.bind.api.Bridge.marshal(Bridge.java:102)
>>     at
>> org.apache.cxf.jaxb.JAXBEncoderDecoder.marshalWithBridge(JAXBEncoderDecoder
>> .java:230) ... 21 more
>> Caused by: java.lang.ClassCastException: java.util.ArrayList
>>     at
>> impl.services.adapters.MessageAdapter.marshal(MessageAdapter.java:15) at
>> com.sun.xml.bind.v2.runtime.BridgeAdapter._adaptM(BridgeAdapter.java:115)
>>     ... 26 more
>>
>> My service has just one method implemented.
>>
>> public List<Message> getMessages(String filter);
>>
>> Message is an interface and I tied the interface to the implementation
>> using JAXB XmlJavaTypeAdapter and my adapter code is shown below.
>>
>> public class MessageAdapter extends XmlAdapter<MessageImpl, Message> {
>>     public MessageImpl marshal(Message v) throws Exception {
>>       return (MessageImpl)v;
>>     }
>>     public Message unmarshal(MessageImpl v) throws Exception {
>>       return v;
>>     }
>> }
>> Am I missing anything here?
>>
>> Appreciate any help.
>>
>> Best regards,
>> Arul
>>     
>
>
>   


Mime
View raw message