Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Undocumented Faults incorrectly de-serialize
example: LicenseUsageFault <soapenv:Body> <soapenv:Fault> <faultcode>ServerFaultCode</faultcode> <faultstring/> <detail> <LicenseUsageFaultFault xsi:type="LicenseUsageFault"> <reason>dataTampered</reason></LicenseUsageFaultFault> </detail> </soapenv:Fault> The detail tag's first child represents the data type to unmarshal the Fault message envelope's contents into. If that child tag does not have a matching WSDL definition pyVmomi fails to raise the fault. This change lets the library dynamically create the new fault data type at runtime. closes vmware#72
- Loading branch information
8659a12
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If this is controversial I think the controversy should be over my use of
CreateDataType
in this context. I am wholly ignoring the WSDL and generating a new data type on the fly. This is a clear violation of client-server contract and ideally should never happen. But, what's the alternative?What else?