[ https://jira.fiware.org/browse/HELP-14008?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] FW External User updated HELP-14008: ------------------------------------ The issue is easy to reproduce within the https://github.com/Fiware/tutorials.Context-Providers <https://github.com/Fiware/tutorials.Context-Providers> GitRepo 1. Pull repository 2. Run ./services stop; ./services create; ./services start; 3. Run the following cUrl commands: - Context Provider is usually localhost:3000. Orion localhost:1026 Check Random Data Generator is Running curl -X GET \ 'http://{{context-provider}}/proxy/random/health' Check Random Data Generator is returning a valid NGSI Array Response curl -X POST \ 'http://{{context-provider}}/proxy/random/array/temperature/queryContext' \ -H 'Cache-Control: no-cache' \ -H 'Content-Type: application/json' \ -H 'Postman-Token: b48df54e-7b3a-4406-814b-b978949c4060' \ -d '{ "entities": [ { "type": "Store", "isPattern": "false", "id": "urn:ngsi-ld:Store:001" } ], "attributes": [ "temperature" ] }' Register Random Data Generator as a Context Provider curl -X POST \ 'http://{{orion}}/v2/registrations' \ -H 'Cache-Control: no-cache' \ -H 'Content-Type: application/json' \ -H 'Postman-Token: 43ff9fdf-2584-4db9-9b95-bec256fdb7dc' \ -d '{ "description": "Current Customer Count", "dataProvided": { "entities": [ { "id": "urn:ngsi-ld:Store:001", "type": "Store" } ], "attrs": [ "customerCount" ] }, "provider": { "http": { "url": "http://context-provider:3000/proxy/random/array/customerCount" }, "legacyForwarding": true } }' Query for Data curl -X GET \ 'http://{{orion}}/v2/entities/urn:ngsi-ld:Store:001' The customerCount has a value of “” - I would expect an array of Lorem Ipsum entries. > [fiware-stackoverflow] Non-Primitive Values from a Registered Content Provider are not showing a value > ------------------------------------------------------------------------------------------------------ > > Key: HELP-14008 > URL: https://jira.fiware.org/browse/HELP-14008 > Project: Help-Desk > Issue Type: Monitor > Components: FIWARE-TECH-HELP > Reporter: Backlog Manager > Assignee: Jose Manuel Cantera > Labels: arrays, fiware, fiware-orion, json > > Created question in FIWARE Q/A platform on 20-04-2018 at 17:04 > {color: red}Please, ANSWER this question AT{color} https://stackoverflow.com/questions/49945250/non-primitive-values-from-a-registered-content-provider-are-not-showing-a-value > +Question:+ > Non-Primitive Values from a Registered Content Provider are not showing a value > +Description:+ > I'm using the /v2/registrations endpoint to register a content provider with the legacyForwarding flag being set. Therefore my Content Provider is offering the v1/queryContext endpoint > When I am returning a simple value (Integer, String etc.) such as a temperature the data is added to the context correctly: > { > "contextResponses": [ > { > "contextElement": { > "attributes": [ > { > "name": "temperature", > "type": "Number", > "value": 27 > } > ], > "id": "urn:ngsi-ld:Store:001", > "isPattern": "false", > "type": "Store" > }, > "statusCode": { > "code": "200", > "reasonPhrase": "OK" > } > } > ] > } > However when trying to return an array of strings as shown from a Context Provider. > { > "contextResponses": [ > { > "contextElement": { > "attributes": [ > { > "name": "tweets", > "type": "Array", > "value": [ > "String 1", > "String 2" > ] > } > ], > "id": "urn:ngsi-ld:Store:002", > "isPattern": "false", > "type": "Store" > }, > "statusCode": { > "code": "200", > "reasonPhrase": "OK" > } > } > ] > } > I can see the request being sent in the log and I can retrieve the following entity: > { > "id": "urn:ngsi-ld:Store:002", > "type": "Store", > "address": { > "type": "PostalAddress", > "value": "", > "metadata": {} > }, > "location": { > "type": "geo:json", > "value": "", > "metadata": {} > }, > "name": { > "type": "Text", > "value": "Checkpoint Markt", > "metadata": {} > }, > "tweets": { > "type": "Array", > "value": "", > "metadata": {} > } > } > As you can see the "tweets" value is blank, but the attribute exists and the type has been successfully received. > My question is how should I return an Array or an Object as a value from a Content Provider so that Orion is able to display the data received correctly? -- This message was sent by Atlassian JIRA (v6.4.1#64016)
You can get more information about our cookies and privacy policies clicking on the following links: Privacy policy Cookies policy