Hello, I have successfully deployed and tested (with client.html tester page with handwritten SOAP) invoking an external webservice to create a Speaker object in the DB2 database using BPEL deployed in ODE BPEL engine installed in Servicemix.
I tried it in 2 ways, one using the ODE build example (speaker-sa.zip) and one using Servicemix maven example (speakerbpel-sa-1.0-SNAPSHOT.jar). I have attached both Service Assemblies with the email.. and both give me the problem I have stated below. I would sincerely appreciate any help, because I have been working to solve this since the last week and I feel, this probably might be addressed in the mailing list already. This is the configuration :- Axis webservice client running on Tomcat -- http://localhost:8580/speakerweb/Speaker.jsp Axis Webservice running on Jboss --- http://localhost:8280/axis/services/Speaker?wsdl ODE BPEL engine installed on standalone Servicemix --- http://localhost:8192/ISpeakerServiceService/Speaker Service Assembly has : HTTP Consumer BC with speakerclient.wsdl pointing to http://localhost:8192/ISpeakerServiceService/Speaker HTTP Provider with Speaker.wsdl BC pointing to http://localhost:8280/axis/services/Speaker?wsdl ODE SE with the deploy.xml which has one provide for HTTP Consumer and one invoke for HTTP Provider Now the following is the SOAP I have manually written which I use in the client.html .. The service works fine with this SOAP message, the external webservice gets invoked and "Some Speaker" record gets created in the table <?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xsi:schemaLocation="http://schemas.xmlsoap.org/soap/envelope/ http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:spe="http://speakerclient.pinc.com"> <soapenv:Body> <spe:in0> <spe:id xsi:nil="true" /> <spe:name>Some Speaker</spe:name> <spe:rating>10</spe:rating> <spe:voided>false</spe:voided> </spe:in0> </soapenv:Body> </soapenv:Envelope> However, from my tomcat axis client, I point to the service mix service and axis creates the following SOAP.. In this case, I get a HTTPStatus 500 Exception <?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <in0 xmlns="http://speakerclient.pinc.com"> <id xsi:nil="true"/> <name>Some Speaker</name> <rating>10</rating> <voided>false</voided> </in0> </soapenv:Body> </soapenv:Envelope> Below is the exception stacktrace :- Please help .. I have reached the end of my nerves .. I would immensely appreciate any help I can get … 11:15:43,280 | DEBUG | pool-2-thread-2 | ointReferenceContextImpl | i.EndpointReferenceContextImpl 62 | resolveEndpointReference: <?xml version="1.0" encoding="UTF-8"?> <service-ref> <jbi:end-point-reference jbi:end-point-name="Speaker" jbi:service-name="sns:ISpeakerServiceService" xmlns:sns="http://speaker.pinc.com"/> </service-ref> 11:15:43,280 | DEBUG | pool-2-thread-2 | ServiceMixMapper | de.jbi.msgmap.ServiceMixMapper 161 | toNMS() normalized message (doc-like):<?xml version="1.0" encoding="UTF-8"?> <in0 xmlns="http://speakerclient.pinc.com" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <id xsi:nil="true"/> <name>Clint Eastwood</name> <rating>10</rating> <voided>false</voided> </in0> 11:15:43,436 | DEBUG | pool-1-thread-1 | DeliveryChannelImpl | .messaging.DeliveryChannelImpl 413 | Send ID:192.168.236.75-115953141f8-2:1 in DeliveryChannel{OdeBpelEngine} 11:15:43,468 | ERROR | pool-flow.seda.servicemix-http-thread-3 | HttpComponent | ervicemix.common.BaseLifeCycle 48 | Error processing exchange InOnly[ id: ID:192.168.236.75-115953141f8-2:1 status: Active role: provider service: {http://speaker.pinc.com}ISpeakerServiceService endpoint: Speaker operation: {http://speaker.pinc.com}saveSpeaker in: <?xml version="1.0" encoding="UTF-8"?><in0 xmlns="http://speakerclient.pinc.com" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><id xmlns="http://speakerclient.pinc.com" xsi:nil="true"/><name xmlns="http://speakerclient.pinc.com">Clint Eastwood</name><rating xmlns="http://speakerclient.pinc.com">10</rating><voided xmlns="http://speakerclient.pinc.com">false</voided></in0> ] java.lang.Exception: Invalid status response: 500 at org.apache.servicemix.http.processors.ProviderProcessor.process(ProviderProcessor.java:191) at org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:489) at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:441) at org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46) at org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:595) at org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174) at org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:176) at org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134) at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665) at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690) at java.lang.Thread.run(Thread.java:595) 11:15:43,468 | DEBUG | pool-flow.seda.servicemix-http-thread-3 | DeliveryChannelImpl | .messaging.DeliveryChannelImpl 413 | Send ID:192.168.236.75-115953141f8-2:1 in DeliveryChannel{servicemix-http} 11:15:43,468 | DEBUG | Thread-10 | DeliveryChannelImpl | .messaging.DeliveryChannelImpl 265 | Accepting ID:192.168.236.75-115953141f8-2:1 in DeliveryChannel{OdeBpelEngine} 11:15:43,468 | ERROR | pool-4-thread-4 | Receiver | org.apache.ode.jbi.Receiver$1 181 | Error processing JBI message. java.lang.ClassCastException: org.apache.servicemix.jbi.messaging.InOnlyImpl at org.apache.ode.jbi.OdeConsumer.onJbiMessageExchange(OdeConsumer.java:165) at org.apache.ode.jbi.JbiMessageExchangeEventRouter.onJbiMessageExchange(JbiMessageExchangeEventRouter.java:40) at org.apache.ode.jbi.Receiver$1.run(Receiver.java:179) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:417) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269) at java.util.concurrent.FutureTask.run(FutureTask.java:123) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675) at java.lang.Thread.run(Thread.java:595) Best Regards, Pallavi Jadhav http://www.nabble.com/file/p13235712/speaker-sa.zip speaker-sa.zip http://www.nabble.com/file/p13235712/speakerbpel-sa-1.0-SNAPSHOT.jar speakerbpel-sa-1.0-SNAPSHOT.jar -- View this message in context: http://www.nabble.com/Invoke-External-WebService-using-ODE-BPEL-in-Servicemix-gives-HTTPStatus-500-response-when-SOAP-message-is-created-through-Axis-..-Please-help-tf4634838s12049.html#a13235712 Sent from the ServiceMix - User mailing list archive at Nabble.com.
