-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Labels
scope/backendRelated to backend changesRelated to backend changestype/bugSomething isn't workingSomething isn't working
Description
Im trying to add Glue Schema to KafkaUI.
It is working fine without it or with Confluent one, but unable to start with Glue.
Here Env:
environment:
- name: KAFKA_CLUSTERS_0_NAME
value: "msk"
- name: KAFKA_CLUSTERS_0_BOOTSTRAPSERVERS
value: "boot:9098"
- name: KAFKA_CLUSTERS_0_PROPERTIES_SECURITY_PROTOCOL
value: "SASL_SSL"
- name: KAFKA_CLUSTERS_0_PROPERTIES_SASL_MECHANISM
value: "AWS_MSK_IAM"
- name: KAFKA_CLUSTERS_0_PROPERTIES_SASL_CLIENT_CALLBACK_HANDLER_CLASS
value: "software.amazon.msk.auth.iam.IAMClientCallbackHandler"
- name: KAFKA_CLUSTERS_0_PROPERTIES_SASL_JAAS_CONFIG
value: "software.amazon.msk.auth.iam.IAMLoginModule required awsDebugCreds=true;"
- name: KAFKA_CLUSTERS_1_NAME
value: "msk-2"
- name: KAFKA_CLUSTERS_1_BOOTSTRAPSERVERS
value: "boot2:9098"
- name: KAFKA_CLUSTERS_1_PROPERTIES_SECURITY_PROTOCOL
value: "SASL_SSL"
- name: KAFKA_CLUSTERS_1_PROPERTIES_SASL_MECHANISM
value: "AWS_MSK_IAM"
- name: KAFKA_CLUSTERS_1_PROPERTIES_SASL_CLIENT_CALLBACK_HANDLER_CLASS
value: "software.amazon.msk.auth.iam.IAMClientCallbackHandler"
- name: KAFKA_CLUSTERS_1_PROPERTIES_SASL_JAAS_CONFIG
value: "software.amazon.msk.auth.iam.IAMLoginModule required awsDebugCreds=true;"
- name: kafka.clusters.1.serde.0.name
value: "GlueSchemaRegistry"
- name: kafka.clusters.1.serde.0.filePath
value: "/glue-serde/kafkaui-glue-serde.jar"
- name: kafka.clusters.1.serde.0.className
value: "io.kafbat.ui.serde.glue.GlueSerde"
- name: kafka.clusters.1.serde.0.properties.region
value: "us-east-1"
- name: kafka.clusters.1.serde.0.properties.registry
value: "SR"
- name: KAFKA_CLUSTERS_0_DISABLELOGDIRS
value: "true" # This is the key fix
- name: KAFKA_CLUSTERS_0_DISABLELOGDIRSCOLLECTION
value: "true"
- name: KAFKA_CLUSTERS_1_DISABLELOGDIRS
value: "true" # This is the key fix
- name: KAFKA_CLUSTERS_1_DISABLELOGDIRSCOLLECTION
value: "true"
And Docker:
FROM ghcr.io/kafbat/kafka-ui:v1.1.0
USER root
RUN mkdir /glue-serde
RUN wget -c https://github.com/kafbat/ui-serde-glue/releases/download/v1.1.0/serde-glue-v1.1.0-jar-with-dependencies.jar -o /glue-serde/kafkaui-glue-serde.jar
USER kafkaui
EXPOSE 80
I also tried with ghcr.io/kafbat/kafka-ui:latest
And Stack trace:
2025-05-28 23:05:43,897 ERROR [main] o.s.b.SpringApplication: Application run failed
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'messagesController' defined in URL [jar:nested:/api.jar/!BOOT-INF/classes/!/io/kafbat/ui/controller/MessagesController.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'messagesService' defined in URL [jar:nested:/api.jar/!BOOT-INF/classes/!/io/kafbat/ui/service/MessagesService.class]: Unsatisfied dependency expressed through constructor parameter 1: Error creating bean with name 'deserializationService' defined in URL [jar:nested:/api.jar/!BOOT-INF/classes/!/io/kafbat/ui/service/DeserializationService.class]: Failed to instantiate [io.kafbat.ui.service.DeserializationService]: Constructor threw exception
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:804)
at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:240)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1377)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1214)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:563)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:523)
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:336)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:289)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:334)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.instantiateSingleton(DefaultListableBeanFactory.java:1122)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingleton(DefaultListableBeanFactory.java:1093)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:1030)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:987)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:627)
at org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext.refresh(ReactiveWebServerApplicationContext.java:66)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:752)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:439)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:318)
at io.kafbat.ui.KafkaUiApplication.startApplication(KafkaUiApplication.java:24)
at io.kafbat.ui.KafkaUiApplication.main(KafkaUiApplication.java:17)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at org.springframework.boot.loader.launch.Launcher.launch(Launcher.java:102)
at org.springframework.boot.loader.launch.Launcher.launch(Launcher.java:64)
at org.springframework.boot.loader.launch.JarLauncher.main(JarLauncher.java:40)
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'messagesService' defined in URL [jar:nested:/api.jar/!BOOT-INF/classes/!/io/kafbat/ui/service/MessagesService.class]: Unsatisfied dependency expressed through constructor parameter 1: Error creating bean with name 'deserializationService' defined in URL [jar:nested:/api.jar/!BOOT-INF/classes/!/io/kafbat/ui/service/DeserializationService.class]: Failed to instantiate [io.kafbat.ui.service.DeserializationService]: Constructor threw exception
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:804)
at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:240)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1377)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1214)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:563)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:523)
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:336)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:289)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:334)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199)
at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1631)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1519)
at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:913)
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791)
... 25 common frames omitted
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'deserializationService' defined in URL [jar:nested:/api.jar/!BOOT-INF/classes/!/io/kafbat/ui/service/DeserializationService.class]: Failed to instantiate [io.kafbat.ui.service.DeserializationService]: Constructor threw exception
at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:321)
at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:309)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1377)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1214)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:563)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:523)
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:336)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:289)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:334)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199)
at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1631)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1519)
at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:913)
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791)
... 39 common frames omitted
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [io.kafbat.ui.service.DeserializationService]: Constructor threw exception
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:222)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:145)
at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:318)
... 53 common frames omitted
Caused by: java.lang.ClassNotFoundException: io.kafbat.ui.serde.glue.GlueSerde
at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:445)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:593)
at io.kafbat.ui.serdes.CustomSerdeLoader$ChildFirstClassloader.loadClass(CustomSerdeLoader.java:122)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526)
at io.kafbat.ui.serdes.CustomSerdeLoader.loadAndConfigure(CustomSerdeLoader.java:45)
at io.kafbat.ui.serdes.SerdesInitializer.loadAndInitCustomSerde(SerdesInitializer.java:265)
at io.kafbat.ui.serdes.SerdesInitializer.createSerdeFromConfig(SerdesInitializer.java:186)
at io.kafbat.ui.serdes.SerdesInitializer.init(SerdesInitializer.java:105)
at io.kafbat.ui.service.DeserializationService.<init>(DeserializationService.java:40)
at java.base/jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:62)
at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:502)
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:486)
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:209)
... 55 common frames omitted
Metadata
Metadata
Assignees
Labels
scope/backendRelated to backend changesRelated to backend changestype/bugSomething isn't workingSomething isn't working