After lots of issues, I can now successfully expose a BPEL component using the Tuscany WS Binding. Let me try to summarize the issues I found, and how I fixed and/or workarounded them:
- TUSCANY-2316 - The ws-binding was overriding the databinding definition on the contract and causing issues. I have cloned the interface contract in the axis binding code (Axis2ServiceBindingProvider) - TUSCANY-2321 - When invoking the BPEL component from a regular pojo, the databinding framework was passing a DOM Element during invocation, but when the BPEL component was exposed using ws-binding it was receiving a DOM Document. I have workarounded this issue in impl-bpel by supporting the two DOM Object types for now. - The last issue was related to how the ws-binding calculates the wsdl service QName. When exposing the BPEL component as webservice, the ws-binding (Axis2ServiceClient.setServiceAndPort) the service QName was being calculated to " {ns}HelloPortType_Service" instead of " {ns}HelloService" as defined in the wsdl, I have workarounded this by explicitly defining the service as part of the binding.ws in the the composite file like :<binding.ws uri="http://localhost:8085/HelloPartnerLink" wsdlElement="http://tuscany.apache.org/implementation/bpel/example/helloworld.wsdl#wsdl.service(HelloService)"/>. It would be good if someone could jump and give a quick help here. I have committed all the fixes/workaround mentioned above, and also added a itest/bpel/helloworld-ws project that exposes a BPEL component using webservices (ws-binding). Please let me know if you have questions/comments. On Wed, May 14, 2008 at 5:10 AM, Mike Edwards <[EMAIL PROTECTED]> wrote: > Ashwini Kumar Jeksani wrote: >> >> Hi, >> >> Most of my deployment issues were resolved after I changed to the latest >> release of Tuscany (version 1.2). >> Now the code is working fine without errors but I am unable to invoke a >> webservice >> >> Nothing is happening beyond this.. >> [java] >>> Invoking a partner operation: approveDataLoad >> >> No invocation at the webservice side as well. >> >> If anyone tried invoking a webservice from bpel please help me. >> >> Thanks & Regards >> Ashwini Kumar Jeksani >> >> >> >> P.S: Previous mails posted in [EMAIL PROTECTED] >> > Ashwini, > > As you can perhaps see from some of the other emails being posted to the > tuscany-dev list, we have found some significant problems with the BPEL code > when trying to invoke a BPEL service via Web services. So it is not > surprising that your code does not work at the moment. > > Luciano and myself are trying to get to grips with issues related to the > databindings and the BPEL invocation code that have problems with the format > of the data presented to the BPEL process when the Web service invocation > occurs. This code has not been exercised before and does not work at > present. With luck we shall have it sorted out in a day or so. > > > Yours, Mike. > -- Luciano Resende Apache Tuscany Committer http://people.apache.org/~lresende http://lresende.blogspot.com/