Hi all,

I trying migrate from xfire to cxf. But, I have some problems with migrating
application functionality.  When I try to call any service method, which
return array of custom objects, I get an exception:

org.apache.cxf.interceptor.Fault: $Proxy37 cannot be cast to
java.lang.Comparable
        at
org.apache.cxf.aegis.databinding.XMLStreamDataReader.read(XMLStreamDataReader.java:49)
        at
org.apache.cxf.aegis.databinding.XMLStreamDataReader.read(XMLStreamDataReader.java:34)
        at
org.apache.cxf.interceptor.DocLiteralInInterceptor.getPara(DocLiteralInInterceptor.java:235)
        at
org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage(DocLiteralInInterceptor.java:120)
        at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
        at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:633)
at
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:2064)
        at
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:1942)
        at
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1867)
        at 
org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
        at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:595)
        at
org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
        at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
        at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:466)
        at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:299)
        at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:251)
        at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
        at org.apache.cxf.frontend.ClientProxy.invoke(ClientProxy.java:68)
        at $Proxy32.getContentDB(Unknown Source)

There is client intialization: 

ClientProxyFactoryBean factory = new ClientProxyFactoryBean();
AegisDatabinding aegis = new AegisDatabinding();
AegisContext context = new AegisContext();
Set<String> rootClasses = new HashSet<String>();
rootClasses.add(Comparable.class.getName());
context.setRootClassNames(rootClasses);
context.setWriteXsiTypes(true);
context.setMtomEnabled(true);
aegis.setAegisContext(context);
factory.setDataBinding(aegis);
factory.setAddress(serviceURL);
factory.setServiceClass(LHSSAdminService.class);
List<Interceptor> interceptors = new ArrayList<Interceptor>();
interceptors.add(new ClientOutInterceptor());
factory.setOutInterceptors(interceptors);
client = (AdminService) factory.create();

Does anybody know how fix this issue?

Thanks


-- 
View this message in context: 
http://www.nabble.com/CXF-Aegis-Problem-tp21037536p21037536.html
Sent from the cxf-user mailing list archive at Nabble.com.

Reply via email to