Hi there,

Yeah with 0.10.2 some Scala applications need to explicitly declare the type of 
certain variables. See this: 
http://docs.confluent.io/current/streams/upgrade-guide.html#scala 
<http://docs.confluent.io/current/streams/upgrade-guide.html#scala> 

Thanks
Eno

> On Jun 17, 2017, at 10:03 PM, Björn Häuser <bjoernhaeu...@gmail.com> wrote:
> 
> Hi!
> 
> I am maintaining an application which is written in Kafka and uses the 
> kafka-streams library.
> 
> As said in the topic, after trying to upgrade from 0.10.1.1 to 0.10.2.1, I am 
> getting the following compilation error:
> 
> [error]  found   : service.streams.transformers.FilterMainCoverSupplier
> [error]  required: org.apache.kafka.streams.kstream.TransformerSupplier[_ >: 
> String, _ >: ?0(in value x$1), org.apache.kafka.streams.KeyValue[?,?]]
> [error] Note: String <: Any (and 
> service.streams.transformers.FilterMainCoverSupplier <: 
> org.apache.kafka.streams.kstream.TransformerSupplier[String,dto.ContentDataDto,org.apache.kafka.streams.KeyValue[String,dto.ContentDataDto]]),
>  but Java-defined trait TransformerSupplier is invariant in type K.
> [error] You may wish to investigate a wildcard type such as `_ <: Any`. (SLS 
> 3.2.10)
> [error] Note: dto.ContentDataDto <: Any (and 
> service.streams.transformers.FilterMainCoverSupplier <: 
> org.apache.kafka.streams.kstream.TransformerSupplier[String,dto.ContentDataDto,org.apache.kafka.streams.KeyValue[String,dto.ContentDataDto]]),
>  but Java-defined trait TransformerSupplier is invariant in type V.
> [error] You may wish to investigate a wildcard type such as `_ <: Any`. (SLS 
> 3.2.10)
> [error]       .transform(filterMainCover, 
> FilterMainCoverSupplier.StateStoreName)
> 
> The definition of the Transformer is as follows:
> 
> class FilterMainCover extends Transformer[String, ContentDataDto, 
> KeyValue[String, ContentDataDto]] {
> }
> 
> The definition of the TransformerSupplier is as follows:
> 
> class FilterMainCoverSupplier extends TransformerSupplier[String, 
> ContentDataDto, KeyValue[String, ContentDataDto]] {
> 
>  override def get(): Transformer[String, ContentDataDto, KeyValue[String, 
> ContentDataDto]] = new FilterMainCover()
> 
> }
> 
> 
> I went through the confluent examples and could see that it is supposed to 
> just work. Anyone got an Idea what I am doing wrong?
> 
> Thanks
> Björn
> 

Reply via email to