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.