Error Failed to initialize all the egress handlers: Shared Access KeyName cannot be null or empty
If you enter the wrong consumerPolicyConnectionString, this error appears in the log of the Connector:
java.lang.IllegalStateException: Failed to initialize all the egress handlers:
SharedAccessKeyName cannot be null or empty
at com.thingworx.protocol.azure.iot.AzureIotProtocolAdapter.
initialize(AzureIotProtocolAdapter.java:343)
at com.thingworx.connectionserver.ConnectionServerDataPlane.
initProtocol(ConnectionServerDataPlane.java:152)
at com.thingworx.statemachine.DispatchingEventChannel.
doEvent(DispatchingEventChannel.java:36)
at com.thingworx.statemachine.AbstractEventChannel.
apply(AbstractEventChannel.java:50)
at rx.internal.util.ActionSubscriber.onNext(ActionSubscriber.java:39)
at rx.observers.SafeSubscriber.onNext(SafeSubscriber.java:134)
at rx.internal.operators.OperatorObserveOn$ObserveOnSubscriber.
call(OperatorObserveOn.java:224)
at rx.internal.schedulers.ScheduledAction.run(ScheduledAction.java:55)
at rx.internal.schedulers.ExecutorScheduler$ExecutorSchedulerWorker.
run(ExecutorScheduler.java:107)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Cause
Solutions
Check the configuration values on your AzureBlobStorage Thing(s) to ensure that they are valid.
Be sure to copy and paste the Connection string-primary key value from Azure, not the Primary Key string.