question

Upvotes
Accepted
20 6 7 10

UPA - loading field dictionary & enumtypes

Using the Java UPA API, both the field dictionary and enumtypes files load via a file but fail when making a request using the code from the Consumer.java application (DictionaryHandler.sendRequest method). The example code uses the following string values and stream id's:

FIELD_DICTIONARY_DOWNLOAD_NAME = RWFFld
FIELD_DICTIONARY_STREAM_ID = 3
ENUM_TYPE_DICTIONARY_DOWNLOAD_NAME = RWFEnum
ENUM_TYPE_DICTIONARY_STREAM_ID = 4

The assumption is that the download names are incorrect? Do these mnemonics map to a logical name associated with the underlying table?

elektronelektron-sdkrrtjavaeta-apielektron-transport-apielektron-data-dictionary
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Please post the STATUS message from the provider, how are you determining that the request has failed?

Upvotes
Accepted
52.5k 134 44 63

The reasons that I can think of are:

  1. The subscribed service (with -s option) may be down or unavailable
  2. If the consumer directly connects to the provider, the provider may not be able to provide the data dictionary via network
  3. The server is unable to send the dictionary via network due to the buffer overflow condition

Please run Consumer example with -x option to enable tracing.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvote
36 0 0 1

The field and enum type dictionary download names should correspond to those specified in the "DictionariesProvided" entry of the source directory refresh message. I believe the correct name for field dictionary is usually "RWFFld". Try that instead of "RFFld" and see if it works.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
20 6 7 10

Thanks - I actually keyed it into the post incorrectly but it is correct in the code (unchanged) and confirmed that this is coming back on the directory refresh message:

DirectoryRefresh:
streamId: 2
State: Open/Ok/None - text: "null"
clearCache: true
solicited: true
filter: INFO | GROUP | STATE
Service:
serviceId: 271
InfoFilter:
serviceName: CONTEX
vendor: null
isSource: 0
supportsQosRange: 0
supportsOutOfBandSnapshots: 1
acceptingConsumerStatus: 1
capabilities: [5, 6, 10]
dictionariesProvided: [RWFFld, RWFEnum]
dictionariesUsed: [RWFFld, RWFEnum]
qos: [Qos: Realtime/TickByTick/Static - timeInfo: 0 - rateInfo: 0]

I must have another issue...

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.