KB-1258 Some or all CDTs are not created after invoking Call Web Service smart service or webservicequery() function

Symptoms

Invoking the Call Web Service smart service or the webservicequery() function does not create or recreate all the relevant CDTs in the environment.

Cause

There are two possible causes:

  1. If this is the first time this WSDL was used on this environment, then this may be because one or more elements in the WSDL are not properly qualified.
  2. If this is not the first time, then this can be caused due to caching of the old datatypes that the WSDL previously generated.

Action

For WSDLs in general, when the elementFormDefault parameter is set to qualified, all elements need to be defined by their fully qualified name, which is <namespace>:<name>. Alternately, the elementFormDefault can be set to unqualified to avoid this validation. This should resolve the issue if it was a first time occurrence.

On the other hand, if this is caused due to the caching of old data types then follow the steps below:

  1. Make sure all relevant CDTs for the WSDL are deleted.
  2. Re-invoke the web service to recreate the CDTs.
  3. If the CDTs are still not recreated, then restart the application server to clear the data type cache and then re-invoke the web service.

Affected Versions

This article applies to all versions of Appian.

Last Reviewed: March 2017

Related
Recommended