hi , it's still not working. here' sthe trace logs
Client TRACE - ServiceHelper - Starting service: Producer[ http://localhost:8088/override/override] DEBUG - CxfProducer - Starting producer: Producer[ http://localhost:8088/override/override] DEBUG - ProducerCache - Adding to producer cache with key: Endpoint[http://localhost:8088/override/override] for producer: Producer[ http://localhost:8088/override/override] TRACE - CxfProducer - Process exchange: Exchange[Message: [com.ccti.luminous.override.overridereques...@ccc588, com.ccti.luminous.override.overridetransact...@1bc82e7]] TRACE - CxfProducer - Set Camel Exchange property: org.apache.camel.component.cxf.DataFormat=POJO DEBUG - CxfProducer - Try to find a default operation. You should set 'operationName' in header. TRACE - CxfProducer - Set exchange property: BindingOperationInfo: [BindingOperationInfo: { http://override.luminous.ccti.com/}acceptOverrideRequest] TRACE - CxfProducer - Unwrapped BOI [BindingOperationInfo: { http://override.luminous.ccti.com/}acceptOverrideRequest] DEBUG - CxfProducer - Try to find a default operation. You should set 'operationName' in header. TRACE - CxfProducer - params[0] = com.ccti.luminous.override.overridereques...@ccc588 TRACE - CxfProducer - params[1] = com.ccti.luminous.override.overridetransact...@1bc82e7 TRACE - DefaultListableBeanFactory - No bean named 'org.apache.cxf.ws.policy.PolicyEngine' found in org.springframework.beans.factory.support.defaultlistablebeanfact...@b6548: defining beans [cxf,org.apache.cxf.bus.spring.BusApplicationListener,org.apache.cxf.bus.spring.BusWiringBeanFactoryPostProcessor,org.apache.cxf.bus.spring.Jsr250BeanPostProcessor,org.apache.cxf.bus.spring.BusExtensionPostProcessor,org.apache.cxf.resource.ResourceManager,org.apache.cxf.configuration.Configurer,org.apache.cxf.binding.BindingFactoryManager,org.apache.cxf.transport.DestinationFactoryManager,org.apache.cxf.transport.ConduitInitiatorManager,org.apache.cxf.wsdl.WSDLManager,org.apache.cxf.phase.PhaseManager,org.apache.cxf.workqueue.WorkQueueManager,org.apache.cxf.buslifecycle.BusLifeCycleManager,org.apache.cxf.endpoint.ServerRegistry,org.apache.cxf.endpoint.ServerLifeCycleManager,org.apache.cxf.endpoint.ClientLifeCycleManager,org.apache.cxf.transports.http.QueryHandlerRegistry,org.apache.cxf.endpoint.EndpointResolverRegistry,org.apache.cxf.headers.HeaderManager,org.apache.cxf.catalog.OASISCatalogManager,org.apache.cxf.endpoint.ServiceContractResolverRegistry,org.apache.camel.component.cxf.transport.CamelTransportFactory#0,org.apache.cxf.jaxrs.JAXRSBindingFactory,org.apache.cxf.binding.soap.SoapBindingFactory,org.apache.cxf.binding.soap.SoapTransportFactory,org.apache.cxf.binding.soap.customEditorConfigurer,org.apache.cxf.binding.xml.XMLBindingFactory,org.apache.cxf.jaxws.context.WebServiceContextResourceResolver,org.apache.cxf.jaxws.context.WebServiceContextImpl,org.apache.cxf.management.InstrumentationManager,org.apache.cxf.transport.http.policy.HTTPClientAssertionBuilder,org.apache.cxf.transport.http.policy.HTTPServerAssertionBuilder,org.apache.cxf.transport.http.policy.NoOpPolicyInterceptorProvider,org.apache.cxf.transport.http.ClientOnlyHTTPTransportFactory,org.apache.cxf.transport.http_jetty.JettyHTTPTransportFactory,org.apache.cxf.transport.jms.JMSTransportFactory,org.apache.cxf.transport.local.LocalTransportFactory,org.apache.cxf.ws.addressing.policy.AddressingAssertionBuilder,org.apache.cxf.ws.addressing.policy.AddressingPolicyInterceptorProvider,org.apache.cxf.ws.addressing.policy.UsingAddressingAssertionBuilder]; root of factory hierarchy TRACE - DefaultListableBeanFactory - No bean named '{ http://override.luminous.ccti.com/}overrideServerPort.http-conduit' found in org.springframework.beans.factory.support.defaultlistablebeanfact...@b6548: defining beans [cxf,org.apache.cxf.bus.spring.BusApplicationListener,org.apache.cxf.bus.spring.BusWiringBeanFactoryPostProcessor,org.apache.cxf.bus.spring.Jsr250BeanPostProcessor,org.apache.cxf.bus.spring.BusExtensionPostProcessor,org.apache.cxf.resource.ResourceManager,org.apache.cxf.configuration.Configurer,org.apache.cxf.binding.BindingFactoryManager,org.apache.cxf.transport.DestinationFactoryManager,org.apache.cxf.transport.ConduitInitiatorManager,org.apache.cxf.wsdl.WSDLManager,org.apache.cxf.phase.PhaseManager,org.apache.cxf.workqueue.WorkQueueManager,org.apache.cxf.buslifecycle.BusLifeCycleManager,org.apache.cxf.endpoint.ServerRegistry,org.apache.cxf.endpoint.ServerLifeCycleManager,org.apache.cxf.endpoint.ClientLifeCycleManager,org.apache.cxf.transports.http.QueryHandlerRegistry,org.apache.cxf.endpoint.EndpointResolverRegistry,org.apache.cxf.headers.HeaderManager,org.apache.cxf.catalog.OASISCatalogManager,org.apache.cxf.endpoint.ServiceContractResolverRegistry,org.apache.camel.component.cxf.transport.CamelTransportFactory#0,org.apache.cxf.jaxrs.JAXRSBindingFactory,org.apache.cxf.binding.soap.SoapBindingFactory,org.apache.cxf.binding.soap.SoapTransportFactory,org.apache.cxf.binding.soap.customEditorConfigurer,org.apache.cxf.binding.xml.XMLBindingFactory,org.apache.cxf.jaxws.context.WebServiceContextResourceResolver,org.apache.cxf.jaxws.context.WebServiceContextImpl,org.apache.cxf.management.InstrumentationManager,org.apache.cxf.transport.http.policy.HTTPClientAssertionBuilder,org.apache.cxf.transport.http.policy.HTTPServerAssertionBuilder,org.apache.cxf.transport.http.policy.NoOpPolicyInterceptorProvider,org.apache.cxf.transport.http.ClientOnlyHTTPTransportFactory,org.apache.cxf.transport.http_jetty.JettyHTTPTransportFactory,org.apache.cxf.transport.jms.JMSTransportFactory,org.apache.cxf.transport.local.LocalTransportFactory,org.apache.cxf.ws.addressing.policy.AddressingAssertionBuilder,org.apache.cxf.ws.addressing.policy.AddressingPolicyInterceptorProvider,org.apache.cxf.ws.addressing.policy.UsingAddressingAssertionBuilder]; root of factory hierarchy TRACE - DefaultListableBeanFactory - No bean named ' http://localhost:8088/override/override' found in org.springframework.beans.factory.support.defaultlistablebeanfact...@b6548: defining beans [cxf,org.apache.cxf.bus.spring.BusApplicationListener,org.apache.cxf.bus.spring.BusWiringBeanFactoryPostProcessor,org.apache.cxf.bus.spring.Jsr250BeanPostProcessor,org.apache.cxf.bus.spring.BusExtensionPostProcessor,org.apache.cxf.resource.ResourceManager,org.apache.cxf.configuration.Configurer,org.apache.cxf.binding.BindingFactoryManager,org.apache.cxf.transport.DestinationFactoryManager,org.apache.cxf.transport.ConduitInitiatorManager,org.apache.cxf.wsdl.WSDLManager,org.apache.cxf.phase.PhaseManager,org.apache.cxf.workqueue.WorkQueueManager,org.apache.cxf.buslifecycle.BusLifeCycleManager,org.apache.cxf.endpoint.ServerRegistry,org.apache.cxf.endpoint.ServerLifeCycleManager,org.apache.cxf.endpoint.ClientLifeCycleManager,org.apache.cxf.transports.http.QueryHandlerRegistry,org.apache.cxf.endpoint.EndpointResolverRegistry,org.apache.cxf.headers.HeaderManager,org.apache.cxf.catalog.OASISCatalogManager,org.apache.cxf.endpoint.ServiceContractResolverRegistry,org.apache.camel.component.cxf.transport.CamelTransportFactory#0,org.apache.cxf.jaxrs.JAXRSBindingFactory,org.apache.cxf.binding.soap.SoapBindingFactory,org.apache.cxf.binding.soap.SoapTransportFactory,org.apache.cxf.binding.soap.customEditorConfigurer,org.apache.cxf.binding.xml.XMLBindingFactory,org.apache.cxf.jaxws.context.WebServiceContextResourceResolver,org.apache.cxf.jaxws.context.WebServiceContextImpl,org.apache.cxf.management.InstrumentationManager,org.apache.cxf.transport.http.policy.HTTPClientAssertionBuilder,org.apache.cxf.transport.http.policy.HTTPServerAssertionBuilder,org.apache.cxf.transport.http.policy.NoOpPolicyInterceptorProvider,org.apache.cxf.transport.http.ClientOnlyHTTPTransportFactory,org.apache.cxf.transport.http_jetty.JettyHTTPTransportFactory,org.apache.cxf.transport.jms.JMSTransportFactory,org.apache.cxf.transport.local.LocalTransportFactory,org.apache.cxf.ws.addressing.policy.AddressingAssertionBuilder,org.apache.cxf.ws.addressing.policy.AddressingPolicyInterceptorProvider,org.apache.cxf.ws.addressing.policy.UsingAddressingAssertionBuilder]; root of factory hierarchy TRACE - DefaultCxfBinding - Populate exchange from CXF response message: org.apache.cxf.binding.soap.soapmess...@746bc28f TRACE - DefaultCxfBinding - Content format=class java.io.InputStream value=sun.net.www.protocol.http.httpurlconnection$httpinputstr...@511e0a TRACE - DefaultCxfBinding - Content format=interface java.util.List value=[] TRACE - DefaultCxfBinding - Content format=interface javax.xml.stream.XMLStreamReader value=com.ctc.wstx.sr.validatingstreamrea...@18b3e62 TRACE - DefaultCxfBinding - Content format=interface org.w3c.dom.Node value=[#document: null] TRACE - DefaultCxfBinding - Extracted body from CXF message = [] TRACE - DefaultCxfBinding - Set header = ResponseContext value = {javax.xml.ws.wsdl.port={ http://override.luminous.ccti.com/}overrideServerPort, org.apache.cxf.service.model.MessageInfo=[MessageInfo OUTPUT: { http://override.luminous.ccti.com/}acceptOverrideRequestResponse], org.apache.cxf.client=true, org.apache.cxf.message.inbound=true, org.apache.cxf.message.Message.PROTOCOL_HEADERS={content-type=[text/xml; charset=utf-8], Content-Length=[192], Server=[Jetty(6.1.6)]}, javax.xml.ws.wsdl.service={ http://override.luminous.ccti.com/}OverrideServerService, org.apache.cxf.message.Message.ENCODING=UTF-8, javax.xml.ws.wsdl.interface={ http://override.luminous.ccti.com/}overrideServer, javax.xml.ws.wsdl.operation={ http://override.luminous.ccti.com/}acceptOverrideRequest, javax.xml.ws.wsdl.description=http://localhost:8088/override/override?wsdl, org.apache.cxf.service.model.bindingmessageinfo=org.apache.cxf.service.model.bindingmessagei...@d1b72d, Content-Type=text/xml; charset=utf-8, org.apache.cxf.headers.Header.list=[], org.apache.cxf.message.Message.RESPONSE_CODE=200} TRACE - DefaultCxfBinding - Populate header from CXF header=content-type value=[text/xml; charset=utf-8] TRACE - DefaultCxfBinding - Populate header from CXF header=Server value=[Jetty(6.1.6)] TRACE - CxfHeaderFilterStrategy - messageHeaderfilter = org.apache.camel.component.cxf.soapmessageheaderfil...@b2fb1e TRACE - DefaultCxfBinding - Populate header from CXF header=org.apache.cxf.headers.Header.list value=[] TRACE - Pipeline - Processing exchangeId: 3e3f6236-051b-4c56-b0e1-70acd2360d06 >>> Exchange[Message: []] INFO - ClientRoutes - Class Is: class org.apache.cxf.message.MessageContentsList Message: [Body is null] Server TRACE - CxfConsumer - Received CXF Request: {org.apache.cxf.service.Service=[ServiceImpl { http://override.luminous.ccti.com/}OverrideServerImplService], javax.xml.ws.wsdl.port={ http://override.luminous.ccti.com/}OverrideServerImplPort, javax.xml.ws.wsdl.interface={ http://override.luminous.ccti.com/}overrideServer, org.apache.cxf.service.model.OperationInfo=[OperationInfo: { http://override.luminous.ccti.com/}acceptOverrideRequest], java.util.concurrent.executor=org.apache.cxf.workqueue.synchronousexecu...@98b13b, javax.xml.ws.wsdl.description=/override?wsdl, org.apache.cxf.bus=org.apache.cxf.bus.cxfbusi...@16d4b50, javax.xml.ws.wsdl.service={ http://override.luminous.ccti.com/}OverrideServerImplService, org.apache.cxf.binding.binding=org.apache.cxf.binding.soap.soapbind...@9bad4f, org.apache.cxf.endpoint.Endpoint={serviceClass=#overrideServer, beanId=overrideServerEndpoint}, org.apache.cxf.service.model.BindingOperationInfo=[BindingOperationInfo: { http://override.luminous.ccti.com/}acceptOverrideRequest]} TRACE - CxfConsumer - Set exchange property: BindingOperationInfo: [BindingOperationInfo: { http://override.luminous.ccti.com/}acceptOverrideRequest] TRACE - CxfConsumer - Set Exchange property: org.apache.camel.component.cxf.DataFormat=POJO TRACE - DefaultCxfBinding - Set IN header: operationNameSpace= http://override.luminous.ccti.com/ TRACE - DefaultCxfBinding - Set IN header: operationName=acceptOverrideRequest TRACE - DefaultCxfBinding - Set exchange MEP: InOut TRACE - DefaultCxfBinding - Populate header from CXF header=content-type value=[text/xml; charset=UTF-8] TRACE - DefaultCxfBinding - Populate header from CXF header=connection value=[keep-alive] TRACE - DefaultCxfBinding - Populate header from CXF header=Host value=[localhost:9090] TRACE - DefaultCxfBinding - Populate header from CXF header=SOAPAction value=[""] TRACE - DefaultCxfBinding - Populate header from CXF header=User-Agent value=[Apache CXF 2.2.3] TRACE - DefaultCxfBinding - Populate header from CXF header=Content-Type value=[text/xml; charset=UTF-8] TRACE - DefaultCxfBinding - Populate header from CXF header=Accept value=[*/*] TRACE - DefaultCxfBinding - Populate header from CXF header=Pragma value=[no-cache] TRACE - DefaultCxfBinding - Populate header from CXF header=Cache-Control value=[no-cache] TRACE - CxfHeaderFilterStrategy - messageHeaderfilter = org.apache.camel.component.cxf.soapmessageheaderfil...@1342f5b TRACE - DefaultCxfBinding - Populate header from CXF header=org.apache.cxf.headers.Header.list value=[] TRACE - DefaultCxfBinding - Content format=class java.io.InputStream value=org.apache.cxf.io.delegatinginputstr...@114ef62 TRACE - DefaultCxfBinding - Content format=class org.apache.cxf.io.DelegatingInputStream value=org.apache.cxf.io.delegatinginputstr...@114ef62 TRACE - DefaultCxfBinding - Content format=interface javax.xml.stream.XMLStreamReader value=com.ctc.wstx.sr.validatingstreamrea...@1703484 TRACE - DefaultCxfBinding - Content format=interface org.w3c.dom.Node value=[#document: null] TRACE - DefaultCxfBinding - Content format=interface java.util.List value=[com.ccti.luminous.override.model.overridereques...@187e184, com.ccti.luminous.override.model.overridetransact...@1e6cf07] TRACE - DefaultCxfBinding - Extracted body from CXF message = [com.ccti.luminous.override.model.overridereques...@187e184, com.ccti.luminous.override.model.overridetransact...@1e6cf07] TRACE - DefaultInflightRepository - Total 1 inflight exchanges. Last added: f8896e9b-77cc-4b69-915b-bc8f3eccb9a8 Trial. Message: [com.ccti.luminous.override.model.overridereques...@187e184, com.ccti.luminous.override.model.overridetransact...@1e6cf07] class org.apache.camel.impl.DefaultMessage class org.apache.cxf.message.MessageContentsList Hi TRACE - DefaultInflightRepository - Total 0 inflight exchanges. Last removed: f8896e9b-77cc-4b69-915b-bc8f3eccb9a8 TRACE - InstrumentationProcessor - route: Recording duration: 15 millis for exchange: Exchange[Message: [Ljava.lang.Object;@3e574] TRACE - DefaultCxfBinding - Set out response context = {CamelCXFDataFormat=POJO, org.apache.cxf.service.model.BindingOperationInfo=[BindingOperationInfo: { http://override.luminous.ccti.com/}acceptOverrideRequest]} TRACE - DefaultCxfBinding - Set Out CXF message content = [[com.ccti.luminous.override.model.overri...@c791f4, com.ccti.luminous.override.model.overri...@3f58bb]] And here's the updated source code from("cxf:bean:overrideServerEndpoint").process(new Processor() { @Override public void process(Exchange exchange) throws Exception { System.out.println("Trial."); System.out.println(exchange.getIn()); System.out.println(exchange.getIn().getClass()); System.out.println(exchange.getIn().getBody().getClass()); List requestList = (List) exchange.getIn().getBody(); List messageContentsList = new ArrayList(); messageContentsList.add(overrideServer.getActiveUsers((OverrideRequestor)requestList.get(0), (OverrideTransaction) requestList.get(1))); List results = overrideServer.getActiveUsers((OverrideRequestor)requestList.get(0), (OverrideTransaction) requestList.get(1)); Object[] objects = new Object[1]; objects[0] = overrideServer.getActiveUsers((OverrideRequestor)requestList.get(0), (OverrideTransaction) requestList.get(1)); exchange.getOut().setBody(objects); System.out.println("Hi"); } On Tue, Jun 1, 2010 at 3:22 PM, Willem Jiang <[email protected]> wrote: > Oh, your return object is a list, camel-cxf converter can't deal with this > situation rightly. > You need put this response into a Object array just like this > > Object[] result = new Object[1]; > result[0] = messageContentsList; > exchange.getOut().setBody(result); > > Willem > > > Carlo Camerino wrote: > >> it seems to be a problem with the server side retrurning nothing >> here's how the reply looks like but in my reply i'm actually setting the >> out >> message body >> >> Here is my interface declaration btw >> >> /** >> * @author User >> * >> */ >> @WebService(name="overrideServer", serviceName="overrideServer") >> public interface OverrideServer { >> /** >> * This method gets the list of active users available for override. >> * @return >> */ >> public List<Overrider> getActiveUsers(OverrideRequestor requestor, >> OverrideTransaction overrideTransaction); >> >> messageContentsList.add( >> >>> overrideServer.getActiveUsers((OverrideRequestor)requestList.get(0), >>> (OverrideTransaction) requestList.get(1))); >>> // using this method to send reply >>> >>> --> settings exchangge's out message body in this part? >> >> exchange.getOut().setBody(messageContentsList); >>> >> >> >> >> >> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/ >> "><soap:Body><ns2:acceptOverrideRequestResponse >> xmlns:ns2="http://override.luminous.ccti.com/ >> "/></soap:Body></soap:Envelope> >> >> On Tue, Jun 1, 2010 at 2:49 PM, Carlo Camerino <[email protected] >> >wrote: >> >> Hi, >>> >>> I seem to be getting this problem in which I'm getting a blank reply >>> comin >>> gfrom the cxf web service. >>> i use cxf:bean and cxf://address component >>> >>> What can i be doing wrong? >>> thanks >>> carlo >>> >>> Client Configuration >>> >>> @Override >>> public void configure() throws Exception { >>> from("direct:carlo").inOut("cxf:// >>> >>> http://localhost:9090/override/override?serviceClass=com.ccti.luminous.override.OverrideServer >>> ").process(new >>> Processor() { >>> >>> @Override >>> public void process(Exchange exchange) throws Exception { >>> exchange.setPattern(ExchangePattern.InOut); >>> LOG.info("Class Is: " + >>> exchange.getIn().getBody().getClass()); >>> // at this point message content list is empty >>> List messageContentsList = >>> (List)exchange.getIn().getBody(); >>> System.out.println(exchange.getOut()); >>> >>> } >>> }); >>> >>> } >>> >>> Server Configuration >>> >>> @Override >>> public void configure() throws Exception { >>> from("cxf:bean:overrideServerEndpoint").process(new Processor() { >>> @Override >>> public void process(Exchange exchange) throws Exception { >>> System.out.println("Trial."); >>> System.out.println(exchange.getIn()); >>> System.out.println(exchange.getIn().getClass()); >>> System.out.println(exchange.getIn().getBody().getClass()); >>> List requestList = (List) exchange.getIn().getBody(); >>> List messageContentsList = new ArrayList(); >>> >>> >>> messageContentsList.add(overrideServer.getActiveUsers((OverrideRequestor)requestList.get(0), >>> (OverrideTransaction) requestList.get(1))); >>> // using this method to send reply >>> exchange.getOut().setBody(messageContentsList); >>> } >>> }); >>> >>> } >>> >>> >> >
