Details
-
Bug
-
Resolution: Done
-
Major
-
2.7.1-fuse-00-43, 2.8.0-fuse-00-06, 2.8.0-fuse-00-08
-
None
-
None
Description
While trying out a Camel demo that uses velocity, I discovered a change of behaviour in the velocity component in Camel 2.8.0. I am using velocity in a Camel route defined in Spring XML. When I deploy the route into the ESB 4.4.1-fuse-00-08 OSGi container, velocity complains that it cannot find the CamelVelocityClasspathResourceLoader class (see strack trace below). I can fix this by importing the class into my bundle.
Exception in thread "Customer web service invoker thread." javax.xml.ws.soap.SOAPFaultException: Problem instantiating the template loader: org.apache.camel.component.velocity.CamelVelocityClasspathResourceLoader. Look at your properties file and make sure the name of the template loader is correct. at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:156) at $Proxy99.getCustomerStatus(Unknown Source) at com.fusesource.customer.client.ClientInvoker.run(ClientInvoker.java:49) at java.lang.Thread.run(Thread.java:662) Caused by: org.apache.cxf.binding.soap.SoapFault: Problem instantiating the template loader: org.apache.camel.component.velocity.CamelVelocityClasspathResourceLoader. Look at your properties file and make sure the name of the template loader is correct. at org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.unmarshalFault(Soap11FaultInInterceptor.java:75) at org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:46) at org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:35) at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:263) at org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:105) at org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:69) at org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:34) at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:263) at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:771) at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:1604) at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:1489) at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1397) at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56) at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:644) at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62) at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:263) at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:519) at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:449) at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:352) at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:304) at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:88) at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:134) ... 3 more