我使用的是Scala中的0.9Kafka Java客户机。
scala> val kafkaProducer = new KafkaProducer[String, String](props)
scala> val keyedRecord = new ProducerRecord("topic", "key", "value")
scala> kafkaProducer.send(keyedRecord)
scala> val unkeyedRecord = new ProducerRecord("topic", "value")
res8: org.apache.kafka.clients.producer.ProducerRecord[Nothing,String] =
ProducerRecord(topic=topic, partition=null, key=null, value=value
scala> kafkaProducer.send(res8)
<console>:17: error: type mismatch;
found : org.apache.kafka.clients.producer.ProducerRecord[Nothing,String]
required: org.apache.kafka.clients.producer.ProducerRecord[String,String]
Note: Nothing <: String, but Java-defined class ProducerRecord is invariant in type K.
You may wish to investigate a wildcard type such as `_ <: String`. (SLS 3.2.10)
kafkaProducer.send(res8)
^
在KafkaProducer
中更改参数k
的方差可以解决这个问题吗?
看起来答案就在注释中,但是为了说明它,Scala在没有显式提供类型时使用类型推断。自从你写了:
val unkeyedRecord = new ProducerRecord("topic", "value")
没有提供键,它变成null,Scala的类型系统推断这是一个Nothing实例。要解决这个问题,请显式声明类型:
val unkeyedRecord = new ProducerRecord[String,String]("topic", "value")
问题内容: 我试图在Flink中的KeyedStream上执行映射操作: JsonToObjectMapper运算符的输出是 MessageObject 类的POJO,它具有String字段“ keyfield ”。然后,将流键入此字段。 MessageProcessorStateful是一个RichMapFunction,如下所示: 该代码引发NullPointer异常: 尽管我已经验证了’ke
上一节的示例程序,演示了播放器内核的基础使用,但是只能循环播放,不能控制的播放器叫什么播放器。因此,这一节我们使用之前写的 button 按键库驱动按键,并实现按键控制播放器的行为:上一曲、下一曲、暂停/播放,音量调节。 硬件连接 以正点原子探索者 STM32F4 开发板为例。开发板上有四个供用户使用的按键 KEY_UP/KEY0/1/2,通过原理图可以看出,KEY0/1/2 三个按键对应的 PI
我遇到了一个非常有趣的场景。我知道n+1问题和FetchType.Eager和FetchMode.join。我有一个家长实体学校,它有2@onetomany儿童实体ie学生和教师。我需要所有3个,所以使用fetchtype.eager和fetchmode.join。 学校实体 学生实体 教师实体 学校回购 如果我通过findById方法获取School对象,即表的主键。 生成的SQL是学校、学生和
我对闪身是个新手。我正在尝试在我的应用程序中启用检查点和状态。我从Flink文档中看到了我们是如何存储键控状态的。但是我想知道我们是否可以存储非键控状态(的状态)
有谁能给我一些建议或链接的所有控制的Android Studio键盘快捷键?
本文向大家介绍C#控制键盘按键的常用方法,包括了C#控制键盘按键的常用方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了C#控制键盘按键的常用方法。分享给大家供大家参考。具体实现方法如下: 希望本文所述对大家的C#程序设计有所帮助。