首页 > 解决方案 > Flink 自定义 Tuple 为空值

问题描述

我有我的自定义元组用于在操作员之间传递数据。

public class A extends Tuple2<String, Message> {

    public String topic;

    public A() {
        super();
    }

    public A(String topic, String key, Message message) {
        super(key, message);
        this.topic = topic;
    }

    public String getTopic() {
        return topic;
    }

    public String getCellId() {
        return this.f0;
    }

    public Message getMessage() {
        return this.f1;
    }
}

但是getTopic()当我尝试在下游运算符中获取它时返回 null 。任何帮助,将不胜感激。

标签: javaapache-flink

解决方案


您正在为自己分配主题字段:

 public A(String topic, String key, Message message) {
        super(key, message);
        this.topic = topic; //<-bug
    }

我认为你需要实现Tuple3<T0,T1,T2>


推荐阅读