Hi Guys, 

I am new to Camel Integration. Please help me to resolve this issue. 

We are doing a HoneyComp Architecture Project and For Integrating each
cell we are using Camel Inetgration. I Facing below issue while doing
Camel Webservice. 

I have implemented apache-camel-2.9.0/examples/camel-example-cxf
Provider program Sucessfully,here we are passing as in Message Mode. In
My case i have to pass a List of Java Bean Object . 

I Made the dispatch type as List :- 

 Dispatch<List> dispatch = service.createDispatch(portName,
List.class,Service.Mode.PAYLOAD); 

Calling the invoke method by passing List 
dispatch.invoke(<<List<flightQuery>>); 


On Consumer Part :- 

public class GreeterProvider implements Provider<List> { 

        @Override 
        public List invoke(List request) { 
                // TODO Auto-generated method stub 
                  throw new UnsupportedOperationException("Placeholder
method"); 
        } 


EndPoint Defined as Follows :- 


  <cxf:cxfEndpoint id="soapMessageEndpoint" 
 
serviceClass="org.emirates.schedule.webservice.GreeterProvider" 
 
address="http://localhost:8080/schedule/services/CamelSourceImpl";
<http://localhost:8080/schedule/services/CamelSourceImpl%22> 
                   wsdlURL="wsdl/CamelSourceImpl.wsdl" 
                   endpointName="s:CamelSourceImpl" 
                   serviceName="s:CamelSourceImplService" 
                   xmlns:s="http://webservice.schedule.emirates.org"/>
<http://webservice.schedule.emirates.org%22/%3E> 

Camel Context on Sping Context file:- 
        
        <camelContext id="camel"
xmlns="http://camel.apache.org/schema/spring";>
<http://camel.apache.org/schema/spring%22%3E> 
        
                   <route>
               <from uri="cxf:bean:soapMessageEndpoint"/>
               <to uri="bean:testBean?method=processSOAP"/>
            </route>
                
                
        </camelContext>

I am facing below issue while Invoking. Can any one please help me on
this regard? 

Send out the request: Hello Camel!! 
WARN : org.apache.cxf.phase.PhaseInterceptorChain - Interceptor for
{http://webservice.schedule.emirates.org
<http://webservice.schedule.emirates.org>
}CamelSourceImplService#{http://cxf.apache.org/jaxws/dispatch
<http://cxf.apache.org/jaxws/dispatch> }Invoke has thrown exception,
unwinding now 
java.lang.ClassCastException: com.emirates.common.dataobject.FlightQuery
cannot be cast to javax.xml.transform.Source 
        at
org.apache.cxf.databinding.source.XMLStreamDataWriter.write(XMLStreamDat
aWriter.java:83) 
        at
org.apache.cxf.databinding.source.XMLStreamDataWriter.write(XMLStreamDat
aWriter.java:50) 
        at
org.apache.cxf.databinding.source.XMLStreamDataWriter.write(XMLStreamDat
aWriter.java:46) 
        at
org.apache.cxf.interceptor.AbstractOutDatabindingInterceptor.writeParts(
AbstractOutDatabindingInterceptor.java:119) 
        at
org.apache.cxf.interceptor.BareOutInterceptor.handleMessage(BareOutInter
ceptor.java:68) 
        at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorC
hain.java:263) 
        at
org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:533) 
        at
org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:463) 
        at
org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:366) 
        at
org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:319) 
        at
org.apache.cxf.endpoint.ClientImpl.invokeWrapped(ClientImpl.java:354) 
        at
org.apache.cxf.jaxws.DispatchImpl.invoke(DispatchImpl.java:381) 
        at
org.apache.cxf.jaxws.DispatchImpl.invoke(DispatchImpl.java:241) 
        at
org.emirates.availability.proxy.JMSLowFareAvailabilityServiceProxy.getLo
wfareAvailabilities(JMSLowFareAvailabilityServiceProxy.java:76) 
        at
org.emirates.shopping.services.BudgetBasedAvailabilityServiceImpl.getLow
FareAvailability(BudgetBasedAvailabilityServiceImpl.java:45) 
        at
org.emirates.shopping.FlightDetailController.onSearch(FlightDetailContro
ller.java:89) 
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
Source) 
        at java.lang.reflect.Method.invoke(Unknown Source) 
        at
org.springframework.web.bind.annotation.support.HandlerMethodInvoker.inv
okeHandlerMethod(HandlerMethodInvoker.java:176) 
        at
org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAd
apter.invokeHandlerMethod(AnnotationMethodHandlerAdapter.java:436) 
        at
org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAd
apter.handle(AnnotationMethodHandlerAdapter.java:424) 
        at
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherS
ervlet.java:790) 
        at
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherSe
rvlet.java:719) 
        at
org.springframework.web.servlet.FrameworkServlet.processRequest(Framewor
kServlet.java:669) 
        at
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet
.java:585) 
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:641) 
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) 
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:304) 
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:210) 
        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
e.java:224) 
        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
e.java:175) 
        at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(Authenticator
Base.java:472) 
        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
:164) 
        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
:100) 
        at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929
) 
        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
java:118) 
        at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:4
05) 
        at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:27
9) 
        at
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(Abs
tractProtocol.java:515) 
        at
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.j
ava:300) 
        at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) 
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown
Source) 
        at java.lang.Thread.run(Unknown Source) 
javax.xml.ws.soap.SOAPFaultException:
com.emirates.common.dataobject.FlightQuery cannot be cast to
javax.xml.transform.Source 
        at
org.apache.cxf.jaxws.DispatchImpl.mapException(DispatchImpl.java:285) 
        at
org.apache.cxf.jaxws.DispatchImpl.invoke(DispatchImpl.java:388) 
        at
org.apache.cxf.jaxws.DispatchImpl.invoke(DispatchImpl.java:241) 
        at
org.emirates.availability.proxy.JMSLowFareAvailabilityServiceProxy.getLo
wfareAvailabilities(JMSLowFareAvailabilityServiceProxy.java:76) 
        at
org.emirates.shopping.services.BudgetBasedAvailabilityServiceImpl.getLow
FareAvailability(BudgetBasedAvailabilityServiceImpl.java:45) 
        at
org.emirates.shopping.FlightDetailController.onSearch(FlightDetailContro
ller.java:89) 
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
Source) 
        at java.lang.reflect.Method.invoke(Unknown Source) 
        at
org.springframework.web.bind.annotation.support.HandlerMethodInvoker.inv
okeHandlerMethod(HandlerMethodInvoker.java:176) 
        at
org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAd
apter.invokeHandlerMethod(AnnotationMethodHandlerAdapter.java:436) 
        at
org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAd
apter.handle(AnnotationMethodHandlerAdapter.java:424) 
        at
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherS
ervlet.java:790) 
        at
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherSe
rvlet.java:719) 
        at
org.springframework.web.servlet.FrameworkServlet.processRequest(Framewor
kServlet.java:669) 
        at
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet
.java:585) 
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:641) 
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) 
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:304) 
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:210) 
        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
e.java:224) 
        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
e.java:175) 
        at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(Authenticator
Base.java:472) 
        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
:164) 
        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
:100) 
        at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929
) 
        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
java:118) 
        at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:4
05) 
        at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:27
9) 
        at
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(Abs
tractProtocol.java:515) 
        at
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.j
ava:300) 
        at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) 
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown
Source) 
        at java.lang.Thread.run(Unknown Source) 
Caused by: java.lang.ClassCastException:
com.emirates.common.dataobject.FlightQuery cannot be cast to
javax.xml.transform.Source 
        at
org.apache.cxf.databinding.source.XMLStreamDataWriter.write(XMLStreamDat
aWriter.java:83) 
        at
org.apache.cxf.databinding.source.XMLStreamDataWriter.write(XMLStreamDat
aWriter.java:50) 
        at
org.apache.cxf.databinding.source.XMLStreamDataWriter.write(XMLStreamDat
aWriter.java:46) 
        at
org.apache.cxf.interceptor.AbstractOutDatabindingInterceptor.writeParts(
AbstractOutDatabindingInterceptor.java:119) 
        at
org.apache.cxf.interceptor.BareOutInterceptor.handleMessage(BareOutInter
ceptor.java:68) 
        at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorC
hain.java:263) 
        at
org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:533) 
        at
org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:463) 
        at
org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:366) 
        at
org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:319) 
        at
org.apache.cxf.endpoint.ClientImpl.invokeWrapped(ClientImpl.java:354) 
        at
org.apache.cxf.jaxws.DispatchImpl.invoke(DispatchImpl.java:381) 
        ... 33 more 


Thanks 
Sony

Reply via email to