我有一个基于 Kafka 的带有 Smallrye 反应式消息传递的 Quarkus 项目。因为我想使用“复杂的 pojo”,所以我需要一个自定义的反序列化器。
我想制作这两个类 CDI bean,这样我就可以注入和使用我的自定义记录器,它是一个 CDI bean。有没有办法做到这一点?
现在我注入的记录器对象只是空的:
import org.apache.kafka.common.serialization.Serializer;
import javax.enterprise.context.ApplicationScoped;
import javax.inject.Inject;
@ApplicationScoped
public class MySerializer implements Serializer<MyDto>
{
@Inject MyLogger logger;
@Override public byte[] serialize(String topicName, MyDto myDto)
{
// this causes a java.lang.NullPointerException
logger.info("serializing");
...
}
}