Community Tip - Need to share some code when posting a question or reply? Make sure to use the "Insert code sample" menu option. Learn more! X
Hi all,
When I run azure-iot.bat file,getting below error
1) Error injecting constructor, java.lang.RuntimeException: routing-group cannot be blank in configuration file
at com.thingworx.protocol.azure.iot.AzureIotHubBindService.<init>(AzureIotHubBindService.java:41)
at com.thingworx.protocol.azure.iot.AzureIotGuiceModule.configure(AzureIotGuiceModule.java:34)
while locating com.thingworx.protocol.azure.iot.AzureIotHubBindService
for the 6th parameter of com.thingworx.protocol.azure.iot.AzureIotProtocolAdapter.<init>(AzureIotProtocolAdapter.java:94)
while locating com.thingworx.protocol.azure.iot.AzureIotProtocolAdapter
while locating com.thingworx.connectionserver.protocol.Protocol
for the 9th parameter of com.thingworx.connectionserver.ConnectionServerDataPlane.<init>(ConnectionServerDataPlane.java:47)
at com.thingworx.connectionserver.ConnectionServerDataPlane.class(ConnectionServerDataPlane.java:25)
while locating com.thingworx.connectionserver.ConnectionServerDataPlane
at com.thingworx.connectionserver.ConnectionServerModule.configure(ConnectionServerModule.java:71)
while locating com.thingworx.statemachine.DataPlane
Caused by: java.lang.RuntimeException: routing-group cannot be blank in configuration file
at com.thingworx.protocol.azure.iot.AzureIotHubBindService.loadRoutingGroup(AzureIotHubBindService.java:163)
at com.thingworx.protocol.azure.iot.AzureIotHubBindService.<init>(AzureIotHubBindService.java:44)
at com.thingworx.protocol.azure.iot.AzureIotHubBindService$$FastClassByGuice$$51158f68.newInstance(<generated>)
at com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy.newInstance(DefaultConstructionProxyFactory.java:89)
at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:111)
at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:90)
at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:268)
at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1092)
at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:194)
at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41)
at com.google.inject.internal.SingleParameterInjector.inject(SingleParameterInjector.java:38)
at com.google.inject.internal.SingleParameterInjector.getAll(SingleParameterInjector.java:62)
at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:110)
at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:90)
at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:268)
at com.google.inject.internal.FactoryProxy.get(FactoryProxy.java:56)
at com.google.inject.internal.SingleParameterInjector.inject(SingleParameterInjector.java:38)
at com.google.inject.internal.SingleParameterInjector.getAll(SingleParameterInjector.java:62)
at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:110)
at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:90)
at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:268)
at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1092)
at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:194)
at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41)
at com.google.inject.internal.FactoryProxy.get(FactoryProxy.java:56)
at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1092)
at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:194)
at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41)
at com.google.inject.internal.InternalInjectorCreator$1.call(InternalInjectorCreator.java:205)
at com.google.inject.internal.InternalInjectorCreator$1.call(InternalInjectorCreator.java:199)
at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1085)
at com.google.inject.internal.InternalInjectorCreator.loadEagerSingletons(InternalInjectorCreator.java:199)
at com.google.inject.internal.InternalInjectorCreator.injectDynamically(InternalInjectorCreator.java:180)
at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:110)
at com.google.inject.Guice.createInjector(Guice.java:99)
at com.thingworx.connectionserver.ConnectionServer.createControlPlane(ConnectionServer.java:96)
at com.thingworx.connectionserver.ConnectionServer.start(ConnectionServer.java:111)
at com.thingworx.connectionserver.ConnectionServer.main(ConnectionServer.java:177)
2) Error injecting constructor, java.lang.RuntimeException: routing-group cannot be blank in configuration file
at com.thingworx.protocol.azure.iot.AzureIotHubBindService.<init>(AzureIotHubBindService.java:41)
at com.thingworx.protocol.azure.iot.AzureIotGuiceModule.configure(AzureIotGuiceModule.java:34)
while locating com.thingworx.protocol.azure.iot.AzureIotHubBindService
Caused by: java.lang.RuntimeException: routing-group cannot be blank in configuration file
at com.thingworx.protocol.azure.iot.AzureIotHubBindService.loadRoutingGroup(AzureIotHubBindService.java:163)
at com.thingworx.protocol.azure.iot.AzureIotHubBindService.<init>(AzureIotHubBindService.java:44)
at com.thingworx.protocol.azure.iot.AzureIotHubBindService$$FastClassByGuice$$51158f68.newInstance(<generated>)
at com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy.newInstance(DefaultConstructionProxyFactory.java:89)
at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:111)
at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:90)
at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:268)
at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1092)
at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:194)
at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41)
at com.google.inject.internal.InternalInjectorCreator$1.call(InternalInjectorCreator.java:205)
at com.google.inject.internal.InternalInjectorCreator$1.call(InternalInjectorCreator.java:199)
at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1085)
at com.google.inject.internal.InternalInjectorCreator.loadEagerSingletons(InternalInjectorCreator.java:199)
at com.google.inject.internal.InternalInjectorCreator.injectDynamically(InternalInjectorCreator.java:180)
at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:110)
at com.google.inject.Guice.createInjector(Guice.java:99)
at com.thingworx.connectionserver.ConnectionServer.createControlPlane(ConnectionServer.java:96)
at com.thingworx.connectionserver.ConnectionServer.start(ConnectionServer.java:111)
at com.thingworx.connectionserver.ConnectionServer.main(ConnectionServer.java:177)
Could anyone help me to fix this issue.
BR,
VR
Solved! Go to Solution.
By default, the routing-group is driven by the hub-thing-name in azure-iot.conf
Are you using the same 2.0 azure-iot.conf in 3.0 ? The configuration is totally different, the Azure IoT Hub Configuration is now done from the ThingWorx Composer.
What version of IoT Hub Connector are you using ? Is it 8.5 (3.0) ?
Hi @Velkumar.
Please provide the azure-iot.conf file for further review. You can mask out any sensitive data.
Regards.
--Sharon
By default, the routing-group is driven by the hub-thing-name in azure-iot.conf
Are you using the same 2.0 azure-iot.conf in 3.0 ? The configuration is totally different, the Azure IoT Hub Configuration is now done from the ThingWorx Composer.