Hi Team,

I got one clue, using the code base : https://github.com/oVirt/ovirt-engine/blob/e2aad594a55c7272b513736616cb4b9841c2c43d/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/serialization/json/JsonObjectDeserializer.java


formattedMapper.configure(Feature.FAIL_ON_UNKNOWN_PROPERTIES, false);

As a default, this flag is set as false, then How I get this error? Any idea?


Thanks,
Hari



On Wed, Jun 20, 2018 at 5:21 PM, Hari Prasanth Loganathan <hariprasanth.l@msystechnologies.com> wrote:
Hi all,

To clarify my payload is like below,

Expected :

{
   "alias": "testdisk",
   "shareable": false,
   "storage_type": "cinder",
   "openstack_volume_type": {
        "name": "ceph"
    },
   "description": "",
   "storage_domains": {
         "storage_domain": [{
            "name": "cinder_newone"
         }]
    },
   "provisioned_size": 1073741824,
     "interface": "virtio",
     "format": "cow"
}

I sent :

{
   "alias": "testdisk",
   "shareable": false,
   "storage_type": "cinder",
   "openstack_volume_type": {
        "name": "ceph"
    },
   "description": "",
   "storage_domains": {
         "storage_domain": [{
            "name": "cinder_newone"
         }]
    },
   "provisioned_size": 1073741824,
     "interface": "virtio",
     "format": "cow",
     "test" : "value"
}


Is there a way to ignore the test field? Please let me know any way / work around.


Any help is much appreciated.

Thanks,
Hari


On Wed, Jun 20, 2018 at 3:09 PM, Hari Prasanth Loganathan <hariprasanth.l@msystechnologies.com> wrote:
Hi Team,

I want to attach the disk using the oVIrt rest API, I use the version 4.2 and completed my script.
But when I downgrade my oVirt to lower version 4.1, I get the following error.

detail: 'For correct usage, see: https://X.X.99.84/ovirt-engine/api/v4/model#services/disk-attachments/methods/add',\n  reason: 'Request syntactically incorrect.',\n  error: 'For correct usage, see: https://X.X.99.84/ovirt-engine/api/v4/model#services/disk-attachments/methods/add',\n 

Reason: I added an extra parameter called 'isSharable' which is not expected in this API.


So Is there a way to Ignore the extra parameters sent for oVirt API?

Example :

Expected :

{
 "a"  : "1"
}

I sent :

{
  "a" : "1",
  "b" : "2"
}

My expectation is, Ignore the "b" and the API should work, Is there a flag in oVirt API which ignores the extra parameters? 

Thanks,
Hari