2010/05/26

Cordys - Exposing business process as webservice

In our project we have to trigger a business process within Cordys. In Cordys it is possible to expose the process as a webservice.
This blog item describes a simple example how to do this.

1) First we create a simple business process.


2) We expose the process as a webservice. Select the process in the Cordys WorkSpace (CSP) and select Business Process Execution > Generate Web Service


3) Fill in the next window and click Finish



3) Now you have to add the Web Service to a service group, so go to the System Resource Manager and select the Cordys Services Service
Add Web Service Interfaces
Select Organization1 and select the ExampleProcess interface. Click Save.

4) Now you are able to call the Webservice. You can test the webservice. Select starProcess > Test Web Service Operation > Invoke


5) But how do you call this webservice from outside the Cordys environment to start a Business Process ?
You can view the WSDL of this interface by startProcess > Show WSDL
What I noticed was the strange looking endpoint:
<wsdl:service xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" name="ExampleProcessService" >
   <wsdl:port xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" name="ExampleProcessPort" binding="tns:ExampleProcess" >
<soap:address xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" location="com.eibus.web.soap.Gateway.wcp" />
</wsdl:port>
</wsdl:service>
I used the Fiddler tool and the Test Web Service tool (described in step 4) to see what the endpoint must be:
In the VM image of this Cordys installation this is http://192.168.154.128/cordys/com.eibus.web.soap.Gateway.wcp
In fact this is the Gateway endpoint of Cordys.
So now you can use the WSDL and this endpoint to test it within soapUI.

2 comments:

  1. just linked this article on my facebook account. it’s a very interesting article for all.
    Agile Process

    ReplyDelete
  2. Hello Charles,

    Thanks for the link on Facebook !

    Regards,
    Roger

    ReplyDelete