question

Upvotes
Accepted
20 7 8 11

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?

@Paul.Wuethrich2

Hi.

Thank you for your participation in the forum.

Are any of the replies below satisfactory in resolving your query?

If so please can you click the 'Accept' text next to the appropriate reply. This will guide all community members who have a similar question.

Else please post again offering further insight into your question.

Thanks

AHS

Hi @Paul.Wuethrich2,

Please be informed that a reply has been verified as correct in answering the question, and has been marked as such.

Thanks,

AHS

Upvotes
Accepted
79.2k 251 52 74

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 7 8 11

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.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

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