I am using the Call Web Service to connect to a CMIS end point. I have keyed in

I am using the Call Web Service to connect to a CMIS end point. I have keyed in the wsdl URL and am trying to map the operations, but get this error "The XSD could not be imported because it contains the unsupported construct xsd:choice". xsd:choice is obviously not supported in Appian as per the documentation, but is there a workaround for this. The CMIS service cannot be changed...

OriginalPostID-114286

OriginalPostID-114286

  Discussion posts and replies are publicly visible

Parents
  • Thank you for your feedback. The approach in situations like this is usually to host a modified copy of the WSDL elsewhere. Replace <xsd:choice> with the target type, e.g. string, and point Appian to that WSDL at design-time. Appian can then call the original endpoint at run-time and the designer will be responsible for passing an acceptable value.
    Note that if the WSDL contains relative paths, those will need to be accounted for as well.
    Finally, Send HTTP request can always be used to post XML to an endpoint, if the Call Web Service Smart Service is not compatible with a particular WSDL.
Reply
  • Thank you for your feedback. The approach in situations like this is usually to host a modified copy of the WSDL elsewhere. Replace <xsd:choice> with the target type, e.g. string, and point Appian to that WSDL at design-time. Appian can then call the original endpoint at run-time and the designer will be responsible for passing an acceptable value.
    Note that if the WSDL contains relative paths, those will need to be accounted for as well.
    Finally, Send HTTP request can always be used to post XML to an endpoint, if the Call Web Service Smart Service is not compatible with a particular WSDL.
Children
No Data