Hide Forgot
Description of problem: API calls using Python SDK fail if legal values "0" and "1" are used for boolean parameters. Version-Release number of selected component (if applicable): rhevm-sdk-python-3.5.2.1-1.el6ev How reproducible: Always. Steps to Reproduce: 1. Issue a call that requires boolean parameter(s). 2. Use "0" or "1" for the boolean parameter(s). For example: host.nics.setupnetworks(params.Action(force = 0, check_connectivity = 1, host_nics = params.HostNics(host_nic = mynics))) Actual results: status: 400 reason: Bad Request detail: Value "1" isn't a valid boolean, it should be "true" or "false" Expected results: API call succeeds. Additional info: - This used to work in all RHEV 3.x versions up to and including 3.4. - This seems to be a consequence of the change in upstream bug 1063876 . - Since the change was applied to JAXB (Java Architecture for XML Binding), according to the XML specification, values "0" and "1" are not canonical but still legal values for boolean datatypes: http://www.w3.org/TR/xmlschema-2/#boolean
ovirt-3.6.0-3 release
Verified with: ovirt-engine-sdk-python-4.0.0.0-0.1.20150908.gitceb901a.fc22.noarch No error msg for: host.nics.setupnetworks(params.Action(force=0, check_connectivity=1, host_nics=params.HostNics( host_nic=mynics)))
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHEA-2016-0376.html