HttpClientSSLConfig(cert_store = CertStoreConfig(resource = "filesystem:$certStorePath", format = "PEM"))
Will produce the following exception when bound up:
Caused by:
--
java.lang.NullPointerException
at misk.security.ssl.SslContextFactory.create(SslContextFactory.kt:30)
at misk.security.ssl.SslContextFactory.create(SslContextFactory.kt:19)
at misk.client.HttpClientFactory.create(HttpClientFactory.kt:70)
at misk.client.HttpClientModule$HttpClientProvider.get(HttpClientModule.kt:45)
at misk.client.HttpClientModule$HttpClientProvider.get(HttpClientModule.kt:40)
at com.google.inject.internal.ProviderInternalFactory.provision(ProviderInternalFactory.java:86)
at com.google.inject.internal.InternalFactoryToInitializableAdapter.provision(InternalFactoryToInitializableAdapter.java:57)
at com.google.inject.internal.ProviderInternalFactory.circularGet(ProviderInternalFactory.java:60)
at com.google.inject.internal.InternalFactoryToInitializableAdapter.get(InternalFactoryToInitializableAdapter.java:47)
at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:169)
at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:45)
at com.google.inject.internal.InjectorImpl$1.get(InjectorImpl.java:1148)
at com.google.inject.spi.ProviderLookup$1.get(ProviderLookup.java:114)
at misk.client.GrpcClientProvider.get(GrpcClientProvider.kt:72)
at misk.client.GrpcClientProvider.get(GrpcClientProvider.kt:51)
at com.google.inject.internal.ProviderInternalFactory.provision(ProviderInternalFactory.java:86)
at com.google.inject.internal.InternalFactoryToInitializableAdapter.provision(InternalFactoryToInitializableAdapter.java:57)
at com.google.inject.internal.ProviderInternalFactory.circularGet(ProviderInternalFactory.java:60)
at com.google.inject.internal.InternalFactoryToInitializableAdapter.get(InternalFactoryToInitializableAdapter.java:47)
at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:169)
at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:45)
at com.google.inject.internal.SingleParameterInjector.inject(SingleParameterInjector.java:40)
at com.google.inject.internal.SingleParameterInjector.getAll(SingleParameterInjector.java:60)
at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:113)
at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:91)
at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:300)
at com.google.inject.internal.SingleFieldInjector.inject(SingleFieldInjector.java:50)
at com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:146)
at com.google.inject.internal.MembersInjectorImpl.injectAndNotify(MembersInjectorImpl.java:101)
at com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:72)
... 6 more
The fix is to provide any passphrase like so:
HttpClientSSLConfig(cert_store = CertStoreConfig(resource = "filesystem:$certStorePath", format = "PEM", passphrase = ""))
We should either properly treat passphrase as optional or make it a non-null param on CertStoreConfig.
Will produce the following exception when bound up:
The fix is to provide any passphrase like so:
We should either properly treat passphrase as optional or make it a non-null param on CertStoreConfig.