Connector Exception 3: Identifier Set with Model and Serial Number After eMessage Connector Running
The eMessage Connector cannot find an asset if an identifier has been set on its corresponding thing in ThingWorx. The Connector rejects any message from the ThingWorx Platform if an identifier set — even if the identifier is set to the model number and serial number that the Connector uses to find the asset. The symptoms of this issue follow:
Here is a scenario that will result in this exception:
1. Remove the identifier property value on the Thing (if it is set)
2. Restart the File Transfer Subsystem to clear out any active transfer jobs.
3. Start eMessage Connector
4. Start the agent to send several messages
5. Set the identifier property on the Thing to WeatherModel||Weather1
6. Force the agent to send a file upload message and several data item messages
In this scenario, the Connector does not process any egress messages from the ThingWorx Platform. In addition, the Connector does not tell the agent to upload the file. Data item messages are processed. The following error and warning are logged:
... ERROR c.t.p.e.converters.EgressConverter -
Error occurred while dequeuing egress for ThingName=Weather1,
error=Timed out waiting for response
... [NettyClient-NIO-5] WARN c.t.s.i.c.DefaultCorrelationChannelImpl -
NULL MessageSynchronizationContext! Request either timed-out waiting for this
response, or it was received by mistake: ...