Expose process definition as a web service in tibco designer


I'm trying to expose a process definition in TIBCO BW Designer 5.7 as a web service, but I've run into some snags. For some reason, I cannot start the Generate Web Service Wizard, because my process does not appear in the "Add More Processes to interface" list.

I've been searching online but to not much avail. What I've gathered is that I need to reference external schemas (using XML Element Reference) in my input (Start) and output (End), which I have done so. So what could be possibly wrong?

Do I need to include any Process Variables or Partners under the Process Definition?

I'm very new to Designer so would appreciate some help here!

Best Solution

To expose a BusinessWorks process as a web service you need to use a WSDL message as input and output (and optionally error output). If you already have a process that is used by other processes and do not want to change input/output schema you could create another process that essentially wraps your initial process but expose input/output as WSDL messages. My suggestion would be to follow these approximate steps

  1. Create a XML schema containing the input and output formats
  2. Create a WSDL resource
    1. Add two Message resources (input/output), reference the above XML schema
    2. Add a PortType resource
      1. Add an Operation resource referencing the two Message resources as input and output
  3. Set input/output of the process to expose to the WSDL messages defined above
  4. Create a Service resource
    1. Add the WSDL operation to the Service interface
    2. Set the implementation of the operation to your process definition
    3. Add a SOAP endpoint with a HTTP transport
  5. Add the Service resource to your Process Archive

For more details on the parameters that can be used, see the BusinessWorks Palette Reference documentation.

Related Question