У меня есть пользовательский клиент Nifi, который пытается установить значения через реестр переменных в кластере Nifi v1.9, используя
PUT /process-groups/{id}/variable-registry
, конечная точка задокументирована здесь
https://nifi.apache.org/docs/nifi-docs/components/nifi-docs/rest-api/index.html
Я создал java классов для построения этой json структуры с обязательными полями
{
"processGroupRevision": {
"clientId": "7efefb9b-ccccccccccc0dda6e5e7833",
"version": 2
},
"variableRegistry": {
"processGroupId": "7f02d425-ccccccccc-dc82549a662b",
"variables": [
{
"variable": {
"name": "db.driver",
"value": "oracle.jdbc.driver.OracleDriver"
}
},
{
"variable": {
"name": "db.jdbc.url",
"value": "jdbc:postgresql://x.y.z:5432/postgres"
}
},
{
"variable": {
"name": "env",
"value": "DEV"
}
}
]
},
"disconnectedNodeAcknowledged": false
}
После отправки я получаю это сообщение - ответное сообщение
2020-04-20 20:17:55 | INFO | [main] c.g.h.n.c.NifiApiClient:202 - Bad Request
2020-04-20 20:17:55 | INFO | [main] c.g.h.n.c.NifiApiClient:203 - Cannot construct instance of
`org.apache.nifi.web.api.entity.VariableRegistryEntity`
(although at least one Creator exists): no String-argument constructor/factory method
to deserialize from String value ('
Две справочные страницы
Is что-нибудь, что я могу сделать в сгенерированном клиентом сообщении, чтобы гарантировать, что сообщение принято?