Trying to get CXF Example to work
timgstewart Nov 11, 2011 1:12 PMHello,
I am hoping to get some assitance here.
I am trying to get a Camel route exposed as a CXF web service within Service Mix. I've tried many different things but nothing seems to work.
I decided to start with a clean system. I downloaded JDK 1.6.0_29, Maven 3.0.3, Fuse ESB 4.4.1, and Fuse Mediation Router 2.8.0. In installed the JDK, unzipped maven, unzipped the Fuse packages.
I set my java_home and maven_home in two command prompt windows, and adjusted my path to reference those.
I chose the camel-example-cxf-osgi, since it seems closest to what I want to do, so I did the following:
In first command prompt window:
1. cd \dev\apache-camel-2.8.0-fuse-00-08\examples\camel-example-cxf-osgi
2. mvn install
Everything seemed to work fine, tests passed, got a jar.
In second command prompt window:
1. cd \dev\apache-servicemix-4.4.1-fuse-00-08
2. bin\servicemix.bat
This gave me the Karaf prompt, where I followed the camel example readme:
3. features:addUrl mvn:org.apache.camel.karaf/apache-camel/2.8.0/xml/features
4. features:install war
5. features:install camel-spring
6. features:install camel-jaxb
7. features:install camel-cxf
Everything went well so far.
8. osgi:install -s mvn:org.apache.camel/camel-example-cxf-osgi/2.8.0
It reported Bundle ID: 219.
That seems good.
I then tried to hit the WSDL, with http://localhost:8181/cxf/camel-example-cxf-osgi/webservices/incident?wsdl, and could see the WSDL.
That was rather exciting. Nothing else I tried got me this far except running camel standalone.
Then I loaded SOAP UI, created a request, and pasted the fields only from the readme I ended up with this:
(Servlet3ContinuationProvider.java:77)[125:org.apache.cxf.bundle:2.4.2.fuse-00-08]
at org.apache.cxf.transport.http.Servlet3ContinuationProvider.getContinuation(Servlet3ContinuationProvider.java:58)[125:org.apache.cxf.bundle:2.4.2.fuse-00-08]
at org.apache.camel.component.cxf.CxfConsumer$1.getContinuation(CxfConsumer.java:113)
at org.apache.camel.component.cxf.CxfConsumer$1.invoke(CxfConsumer.java:66)
at org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:58)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)[:1.6.0_29]
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)[:1.6.0_29]
at java.util.concurrent.FutureTask.run(FutureTask.java:138)[:1.6.0_29]
at org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37)[125:org.apache.cxf.bundle:2.4.2.fuse-00-08]
at org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:106)[125:org.apache.cxf.bundle:2.4.2.fuse-00-08]
... 34 more
I can't figure out where to go from here, and I've had similar success (or lack thereof) with the other CXF samples. Is it just me? We are evaluating this for use in our upcoming project, and so far it is consuming more time than anything else on the project, with zero results.
Any help is very much appreciated.
- Tim Stewart.