Configure a Web service activity

  1. Add an activity to the map.

    By default, the Configuration tab is open in the properties panel of the activity.

  2. Change the default Name of the activity to something meaningful.
  3. On the Type list, select Common > Web service.
  4. Click Configure for Parameters. The Configure web service activity dialog box is displayed.
    A list of associated parameters appear.
    • If a web service call contains classes within classes, all available levels of classes appear.

    • If the classes are recursive, only three levels of classes appear.

    • If a web service call contains arrays within arrays, all available levels of arrays appear.

    1. On the Web service list, select the Web service.

      Note You can whitelist a web service reference. If Allow all in the system settings is cleared, you can only use the whitelisted web service references. See Configure the server URLs and database connection strings.

      The associated class and method of the Web service is populated in the Class and Method list.
    2. Map variables to the parameters using dynamic or static values.
      Note To help transfer asset binary data, map string variables as an input or output to byte[] array type parameter.
    3. Click OK.
  5. Save the process map.
  6. Configure other properties for this activity. See Activity properties.

Additional information

When executing a Web service activity, a web service proxy is generated for the web service WSDL, and if an array of a complex type includes an element that is also an array of a complex type and for which only one element exists, errors such as given below may occur:

  • Unable to generate a temporary class (result=1).
  • Error CS0029: Cannot implicitly convert type 'CustomTypeXXX' to 'CustomTypeXXX[]'
  • Error CS0030: Cannot implicitly convert type 'CustomTypeXXX[]' to 'CustomTypeXXX'

Use any of the following workaround to resolve these issues:

  • You can change the data type in the desired WSDL so that a second, optional element is included in the definition. You can add the following element:
    <xs:element min0ccurs="0" name="dummyElement"nillable="true"type="xs"string"/>
  • You can change the complex type in the desired WSDL so that the boundary attributes are part of the complex type instead of being part of the element. That is, you can move the minOccurs and maxOccurs attributes to the complex type and then remove them from the element.