
okay, Thanks all for your help. On Thu, Jun 21, 2018 at 5:14 PM, Ondra Machacek <omachace@redhat.com> wrote:
Well, if they may use 4.0, you should write code which support 4.0 and don't use any 4.2 features, as it won't work anyway on 4.2.
If you want to support features from 4.2, and use it against 4.0 where it will be igonored and use it also agains 4.2 where it will be supported, it's quite simple to do in our SDKs, not sure how it can be done in your script, is it bash or something else?
On 06/21/2018 01:05 PM, Hari Prasanth Loganathan wrote:
the problem is, I can't write different client codes for the different version. Consider my case, I developed my script considering the oVirt version 4.2, If my client is using 4.1 then he needs the same script to be supported. What If the client is using further older version say 4.0, So do you want me to write the script for every version of oVirt. It is not correct.
So could you let me know, Is there a way to ignore extra properties in oVirt Rest API?
On Thu, Jun 21, 2018 at 4:30 PM, Ondra Machacek <omachace@redhat.com <mailto:omachace@redhat.com>> wrote:
Well, I don't know what are you using to generate the JSON, but you just need to check if engine is v4.1 and then send the JSON without the field and if version is v4.2 and higher you can use that field.
If you share you script maybe I can advice, or if you are using any SDK. It would be even simpler as you just set the field to None/null/nil and it won't be generated to the XML body which SDK send.
On 06/21/2018 12:52 PM, Hari Prasanth Loganathan wrote:
Thanks, Ondra for confirming.
You need to handle this situation client side.
So you are saying there is a work-around in client side, I didn't get this point, Could you explain, please.
On Thu, Jun 21, 2018 at 4:20 PM, Ondra Machacek <omachace@redhat.com <mailto:omachace@redhat.com> <mailto:omachace@redhat.com <mailto:omachace@redhat.com>>> wrote:
We do not support this.
For xml we use event handler, which takes unknown fields as error:
https://github.com/oVirt/ovirt-engine/blob/68753f46f09419ddc dbb632453501273697d1a20/backend/manager/modules/ restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/ xml/JAXBProvider.java#L182 <https://github.com/oVirt/ovirt-engine/blob/68753f46f09419dd cdbb632453501273697d1a20/backend/manager/modules/ restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/ xml/JAXBProvider.java#L182> <https://github.com/oVirt/ovir t-engine/blob/68753f46f09419ddcdbb632453501273697d1a20/ backend/manager/modules/restapi/jaxrs/src/main/java/ org/ovirt/engine/api/restapi/xml/JAXBProvider.java#L182 <https://github.com/oVirt/ovirt-engine/blob/68753f46f09419dd cdbb632453501273697d1a20/backend/manager/modules/ restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/ xml/JAXBProvider.java#L182>>
For json we don't have turn of the feature FAIL_ON_UNKNOWN_PROPERTIES, you would need to put it on line 29 to make it working:
https://github.com/oVirt/ovirt-engine/blob/e06859fef6c38a955 a4e0e1f6b0ddaa1e8eae8fb/backend/manager/modules/ restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/ json/CustomObjectMapper.java#L28 <https://github.com/oVirt/ovirt-engine/blob/e06859fef6c38a95 5a4e0e1f6b0ddaa1e8eae8fb/backend/manager/modules/ restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/ json/CustomObjectMapper.java#L28> <https://github.com/oVirt/ovir t-engine/blob/e06859fef6c38a955a4e0e1f6b0ddaa1e8eae8fb/ backend/manager/modules/restapi/jaxrs/src/main/java/ org/ovirt/engine/api/restapi/json/CustomObjectMapper.java#L28 <https://github.com/oVirt/ovirt-engine/blob/e06859fef6c38a95 5a4e0e1f6b0ddaa1e8eae8fb/backend/manager/modules/ restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/ json/CustomObjectMapper.java#L28>>
You need to handle this situation client side.
On 06/21/2018 11:21 AM, Hari Prasanth Loganathan wrote:
Could somebody explain this please?
On Thu, Jun 21, 2018 at 7:41 AM, Hari Prasanth Loganathan <hariprasanth.l@msystechnologies.com <mailto:hariprasanth.l@msystechnologies.com> <mailto:hariprasanth.l@msystechnologies.com <mailto:hariprasanth.l@msystechnologies.com>> <mailto:hariprasanth.l@msystechnologies.com <mailto:hariprasanth.l@msystechnologies.com> <mailto:hariprasanth.l@msystechnologies.com <mailto:hariprasanth.l@msystechnologies.com>>>> wrote:
*Hi Ondra / Ori,*
https://github.com/oVirt/ovirt-engine/search?q=FAIL_ON_UNKNO WN_PROPERTIES%2C+false%29%3B&unscoped_q=FAIL_ON_UNKNOWN_ PROPERTIES%2C+false%29%3B <https://github.com/oVirt/ovirt-engine/search?q=FAIL_ON_UNKN OWN_PROPERTIES%2C+false%29%3B&unscoped_q=FAIL_ON_UNKNOWN_ PROPERTIES%2C+false%29%3B> <https://github.com/oVirt/ovir t-engine/search?q=FAIL_ON_UNKNOWN_PROPERTIES%2C+false%29%3B& unscoped_q=FAIL_ON_UNKNOWN_PROPERTIES%2C+false%29%3B <https://github.com/oVirt/ovirt-engine/search?q=FAIL_ON_UNKN OWN_PROPERTIES%2C+false%29%3B&unscoped_q=FAIL_ON_UNKNOWN_ PROPERTIES%2C+false%29%3B>> <https://github.com/oVirt/ovir t-engine/search?q=FAIL_ON_UNKNOWN_PROPERTIES%2C+false%29%3B& unscoped_q=FAIL_ON_UNKNOWN_PROPERTIES%2C+false%29%3B <https://github.com/oVirt/ovirt-engine/search?q=FAIL_ON_UNKN OWN_PROPERTIES%2C+false%29%3B&unscoped_q=FAIL_ON_UNKNOWN_ PROPERTIES%2C+false%29%3B> <https://github.com/oVirt/ovir t-engine/search?q=FAIL_ON_UNKNOWN_PROPERTIES%2C+false%29%3B& unscoped_q=FAIL_ON_UNKNOWN_PROPERTIES%2C+false%29%3B <https://github.com/oVirt/ovirt-engine/search?q=FAIL_ON_UNKN OWN_PROPERTIES%2C+false%29%3B&unscoped_q=FAIL_ON_UNKNOWN_ PROPERTIES%2C+false%29%3B>>>
Check the above link, As per the code it is always set as false, So is there a way in payload / headers in client API / server configuration in oVirt engine which can ignore the extra payload parameters?
Any help / workaround is much appreciated.
Thanks, Greg for pointing the right ppl.
Thanks, Hari
On Thu, Jun 21, 2018 at 1:35 AM, Greg Sheremeta <gshereme@redhat.com <mailto:gshereme@redhat.com> <mailto:gshereme@redhat.com <mailto:gshereme@redhat.com>> <mailto:gshereme@redhat.com <mailto:gshereme@redhat.com> <mailto:gshereme@redhat.com <mailto:gshereme@redhat.com>>>> wrote:
+Ondra and Ori
On Wed, Jun 20, 2018 at 1:07 PM Hari Prasanth Loganathan <hariprasanth.l@msystechnologies.com <mailto:hariprasanth.l@msystechnologies.com> <mailto:hariprasanth.l@msystechnologies.com <mailto:hariprasanth.l@msystechnologies.com>> <mailto:hariprasanth.l@msystechnologies.com <mailto:hariprasanth.l@msystechnologies.com> <mailto:hariprasanth.l@msystechnologies.com <mailto:hariprasanth.l@msystechnologies.com>>>> wrote:
Guys any update on this? if you have any clarification let me know please.
Thanks
On Wed, 20 Jun 2018 at 5:41 PM, Hari Prasanth Loganathan <hariprasanth.l@msystechnologies.com <mailto:hariprasanth.l@msystechnologies.com> <mailto:hariprasanth.l@msystechnologies.com <mailto:hariprasanth.l@msystechnologies.com>> <mailto:hariprasanth.l@msyste chnologies.com <mailto:hariprasanth.l@msystechnologies.com> <mailto:hariprasanth.l@msystechnologies.com <mailto:hariprasanth.l@msystechnologies.com>>>> wrote:
Hi Team,
I got one clue, using the code base : https://github.com/oVirt/ovirt-engine/blob/e2aad594a55c7272b 513736616cb4b9841c2c43d/backend/manager/modules/utils/ src/main/java/org/ovirt/engine/core/utils/serializatio n/json/JsonObjectDeserializer.java <https://github.com/oVirt/ovirt-engine/blob/e2aad594a55c7272 b513736616cb4b9841c2c43d/backend/manager/modules/utils/ src/main/java/org/ovirt/engine/core/utils/serializatio n/json/JsonObjectDeserializer.java> <https://github.com/oVirt/ovir t-engine/blob/e2aad594a55c7272b513736616cb4b9841c2c43d/ backend/manager/modules/utils/src/main/java/org/ovirt/ engine/core/utils/serialization/json/JsonObjectDeserializer.java <https://github.com/oVirt/ovirt-engine/blob/e2aad594a55c7272 b513736616cb4b9841c2c43d/backend/manager/modules/utils/ src/main/java/org/ovirt/engine/core/utils/serializatio n/json/JsonObjectDeserializer.java>> < https://github.com/oVirt/ovirt-engine/blob/e2aad594a55c7272 b513736616cb4b9841c2c43d/backend/manager/modules/utils/ src/main/java/org/ovirt/engine/core/utils/serializatio n/json/JsonObjectDeserializer.java <https://github.com/oVirt/ovirt-engine/blob/e2aad594a55c7272 b513736616cb4b9841c2c43d/backend/manager/modules/utils/ src/main/java/org/ovirt/engine/core/utils/serializatio n/json/JsonObjectDeserializer.java> <https://github.com/oVirt/ovir t-engine/blob/e2aad594a55c7272b513736616cb4b9841c2c43d/ backend/manager/modules/utils/src/main/java/org/ovirt/ engine/core/utils/serialization/json/JsonObjectDeserializer.java <https://github.com/oVirt/ovirt-engine/blob/e2aad594a55c7272 b513736616cb4b9841c2c43d/backend/manager/modules/utils/ src/main/java/org/ovirt/engine/core/utils/serializatio n/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 <mailto:hariprasanth.l@msystechnologies.com> <mailto:hariprasanth.l@msystechnologies.com <mailto:hariprasanth.l@msystechnologies.com>> <mailto:hariprasanth.l@msyste chnologies.com <mailto:hariprasanth.l@msystechnologies.com>
<mailto:hariprasanth.l@msystechnologies.com <mailto: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 <mailto:hariprasanth.l@msystechnologies.com> <mailto:hariprasanth.l@msystechnologies.com <mailto:hariprasanth.l@msystechnologies.com>> <mailto: hariprasanth.l@msystechnologies.com <mailto:hariprasanth.l@msystechnologies.com>
<mailto:hariprasanth.l@msystechnologies.com <mailto: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 <https://X.X.99.84/ovirt-engine/api/v4/model#services/disk- attachments/methods/add> <https://X.X.99.84/ovirt-engin e/api/v4/model#services/disk-attachments/methods/add <https://X.X.99.84/ovirt-engine/api/v4/model#services/disk- attachments/methods/add>> < https://X.X.99.84/ovirt-engine/api/v4/model#services/disk- attachments/methods/add <https://X.X.99.84/ovirt-engine/api/v4/model#services/disk- attachments/methods/add> <https://X.X.99.84/ovirt-engin e/api/v4/model#services/disk-attachments/methods/add <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 <https://X.X.99.84/ovirt-engine/api/v4/model#services/disk- attachments/methods/add> <https://X.X.99.84/ovirt-engin e/api/v4/model#services/disk-attachments/methods/add <https://X.X.99.84/ovirt-engine/api/v4/model#services/disk- attachments/methods/add>> < https://X.X.99.84/ovirt-engine/api/v4/model#services/disk- attachments/methods/add <https://X.X.99.84/ovirt-engine/api/v4/model#services/disk- attachments/methods/add> <https://X.X.99.84/ovirt-engin e/api/v4/model#services/disk-attachments/methods/add <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
_____________________________ __________________ Users mailing list -- users@ovirt.org <mailto:users@ovirt.org> <mailto:users@ovirt.org <mailto:users@ovirt.org>> <mailto:users@ovirt.org <mailto:users@ovirt.org> <mailto:users@ovirt.org <mailto:users@ovirt.org>>>
To unsubscribe send an email to users-leave@ovirt.org <mailto:users-leave@ovirt.org> <mailto:users-leave@ovirt.org <mailto:users-leave@ovirt.org>> <mailto:users-leave@ovirt.org <mailto:users-leave@ovirt.org> <mailto:users-leave@ovirt.org <mailto:users-leave@ovirt.org>>> Privacy Statement: https://www.ovirt.org/site/privacy-policy/ <https://www.ovirt.org/site/privacy-policy/> <https://www.ovirt.org/site/privacy-policy/ <https://www.ovirt.org/site/privacy-policy/>> <https://www.ovirt.org/site/p rivacy-policy/ <https://www.ovirt.org/site/privacy-policy/> <https://www.ovirt.org/site/privacy-policy/ <https://www.ovirt.org/site/privacy-policy/>>> oVirt Code of Conduct: https://www.ovirt.org/community/about/community-guidelines/ <https://www.ovirt.org/community/about/community-guidelines/> <https://www.ovirt.org/communi ty/about/community-guidelines/ <https://www.ovirt.org/community/about/community-guidelines/>> < https://www.ovirt.org/community/about/community-guidelines/ <https://www.ovirt.org/community/about/community-guidelines/> <https://www.ovirt.org/communi ty/about/community-guidelines/ <https://www.ovirt.org/community/about/community-guidelines/>>> List Archives: https://lists.ovirt.org/archives/list/users@ovirt.org/messag e/Q3S2KU4PXZ7P2ZBLAYM7CYAK2S4NUJD5/ <https://lists.ovirt.org/archives/list/users@ovirt.org/messa ge/Q3S2KU4PXZ7P2ZBLAYM7CYAK2S4NUJD5/> <https://lists.ovirt.org/archi ves/list/users@ovirt.org/message/Q3S2KU4PXZ7P2ZBLAYM7CYAK2S4NUJD5/ <https://lists.ovirt.org/archives/list/users@ovirt.org/messa ge/Q3S2KU4PXZ7P2ZBLAYM7CYAK2S4NUJD5/>> < https://lists.ovirt.org/archives/list/users@ovirt.org/messa ge/Q3S2KU4PXZ7P2ZBLAYM7CYAK2S4NUJD5/ <https://lists.ovirt.org/archives/list/users@ovirt.org/messa ge/Q3S2KU4PXZ7P2ZBLAYM7CYAK2S4NUJD5/> <https://lists.ovirt.org/archi ves/list/users@ovirt.org/message/Q3S2KU4PXZ7P2ZBLAYM7CYAK2S4NUJD5/ <https://lists.ovirt.org/archives/list/users@ovirt.org/messa ge/Q3S2KU4PXZ7P2ZBLAYM7CYAK2S4NUJD5/>>>
-- GREG SHEREMETA
SENIOR SOFTWARE ENGINEER - TEAM LEAD - RHV UX
Red Hat NA
gshereme@redhat.com <mailto:gshereme@redhat.com> <mailto:gshereme@redhat.com <mailto:gshereme@redhat.com>> <mailto:gshereme@redhat.com <mailto:gshereme@redhat.com> <mailto:gshereme@redhat.com <mailto:gshereme@redhat.com>>> IRC: gshereme