API-интерфейс Nifi - VariableRegistryEntity: нет конструктора строковых аргументов / метода фабрики? - PullRequest
0 голосов
/ 20 апреля 2020

У меня есть пользовательский клиент 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 что-нибудь, что я могу сделать в сгенерированном клиентом сообщении, чтобы гарантировать, что сообщение принято?

...