06-28-2017 03:03 AM
Trying to execute a SOAP web service request against workday and getting the following:
An exception occurred while executing the SOAP request
Resolution
Verify that the template is correct, the substituted values are valid and the provided envelope matches the namespaces that are required by the targeted service
Reason
unknown protocol: null
The workday WSDL has some things missing that I would think are standard not least actions, port definitions. Seems to work though with the above exception.
How do I specify the missing protocol value assuming I have no control or access to WSDL?
07-13-2017 04:22 PM
Workday publishes some WSDLs in the Workday Services documentation site without a valid endpoint for the purpose of reference. This can be verified by opening the WSDL file and look at the soap address location at the bottom of the WSDL. A valid endpoint for workday should have a location starting with the “https://” protocol.
Here is an example of a valid endpoint at the end of the WSDL file:
…
<wsdl:service name=“Human_ResourcesService”>
<wsdl:port name=“Human_Resources” binding=“wd-wsdl:Human_ResourcesBinding”>
<soapbind:address location=“https://impl-cc.workday.com/ccx/service/osv_fusionio4/Human_Resources/v18”/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
If it does not have the “https://”, then the solution would be to export the Workday WSDL from the Workday tenant.
The Workday snap is a preferable over the SOAP snap since it is an easier to use and more capable.