Skip to Content

Till now we have created a Web Dynpro project and a Process Composer project, now its time to create Service Interface that would be triggering the Start of the BPM Process that we designed. We will create a new WSDL that would contain the Structure for the data that we need to pass from the Web Service to the Process Task. So lets get started:

Step 1: Create a WSDL

Expand the Service Interfaces and right click on it, from the context menu choose New > WSDL. Give the filename as StartProcessSI.wsdl and press the Next button.

Define the Target Namespace

 

Step 2: Open the WSDL

Double click on the WSDL name to open and then click on the Arrow just next to the input parameters to define the schema

 

Step 3: Create Structure

Right click on the Types and choose Add Complex Type from the context menu.

 

Name the Complex Type as desired

 

Open the complex type to add elements to it. Right click on the complex Type name and choose Add Element from the context menu.

 

Define the Cardinality as 1..1 for the complex type

Step 4: Set the interface for the Start event

Point to the Start event in the process and open the properties to select the Interface. Choose the newly created Service Interface against the Interface for the start event.

 

 

Step 5: Output Mapping

Complete the Output mapping from the Servie Interface to the Data Object as depicted below:

 

Build and deploy the development component and navigate to WSnavigator > Service Test > Select Provider Systems and press Search

Choose the StartProcessSI and click Next

 

Expand the Service Information tab and copy the URL of the WSDL

 

Using this wsdl link you can create a Adaptive Web Service Model and then use that in your Web Dynpro Component to invoke the Start event using this WS from a portal Iview. Or else you can try testing the Process by executing the Web Service from WSNavigator which I did for this example. Following inputs were sent:

Name: Arafat Farooqui

Age: 26

 

After invoking the Web Service, a task is visible in potential owners’ (Defined at task level in our case) UWL.

 

On opening the task, a message is displayed based on the inputs and logic.

Complex schemas can be defined using the WSDL and used for complex the scenarios.

Links to Other Parts:

Introduction to SAP Netweaver BPM: Part 1 [Part I: An introduction to SAP Netweaver BPM]

Introduction to SAP Netweaver BPM: Part 2 [Introduction to SAP Netweaver BPM: Part 2]

Introduction to SAP Netweaver BPM: Part 3 [Introduction to SAP Netweaver BPM: Part 3]

Introduction to SAP Netweaver BPM: Part 5 and Introduction to SAP Netweaver BPM: Part 6 are also available now. 

To report this post you need to login first.

9 Comments

You must be Logged on to comment or reply to a post.

  1. Sinh Nguyen Van
    Hi Arafat,
    Thanks for your useful and clearly blogs.
    But i meet a small problem when call the started service to trigger the process from WebDynpro Java. There is a error after calling the started service.
    The error message like: ‘http://…../Config1?wsdl‘ with operation ‘….’ in interface ‘{urn:../…}….

    Did you meet the problem?

    Thanks,
    Sinh.

    (0) 
    1. Arafat Farooqui Post author
      Hi Sinh,

      Thanks for writing in, request you to send me the Default trace for the error so that I can understand the issue and update you with the solution.

      Thanks & Regards,
      Arafat

      (0) 
    1. Arafat Farooqui Post author
      Hi Furkan,

      Since we are making a asynchronous call to the WS to trigger the Start event of the process, the WS returns the fault code ‘Process STart has been triggered’. This signifies that your process has been instantiated and running. If you are not able to see the process/task in UWL then please check the process status in NWA.

      Hope this helps!!

      Cheers,
      Arafat

      (0) 
  2. ashwani tomar
    Hi Arafat,
    I am trying to trigger the BPM from a web dynpro screen so I followed your blog but I am getting an error “Exception on creation of service metadata for web service mass config parameters service reference ID ’28af57ab-9212-4ffd-90c6-0779c78a8da3′ and application name ‘demo.sap.com/testwd’. Check mass configuration has been done properly. “
    Is there a config needs to be done for the Web Service to work? Please help.
    (0) 
  3. James Gan
    Hi Arafat,

    I followed your approach to create a WSDL and it worked pretty well.

    However when I want to add new fields (select the DO_XXX data type, right click and choose “Add Element” to add new fields), but when I went to the Input/Output mapping, the DO_XXX type still only has the old fields. The new fields are not there. Any step I missed?

    Thanks,
    James

    (0) 
  4. Alain More
    Hi Arafat,

    I followed your log, and it’s very clear on how to create the WS for the BPM. My question is, do you know how to trigger said WS in a regular non-Web dynpro J2EE application? It seems the WS for a BPM is different from a regular WS from an EJB for example…

    (0) 

Leave a Reply