cascading-cascading.tuple.tupleexception:未能设置值

vsmadaxz  于 2021-07-13  发布在  Java
关注(0)|答案(1)|浏览(331)

我正在尝试对每个元组应用scrubfunction,并用更新的值返回元组。
但我得到的例外是。。

Caused by: cascading.tuple.TupleException: failed to set a value, tuple may not be initialized with values, is zero length

示例代码:

TupleEntry argument = functionCall.getArguments();
        Tuple result = new Tuple();
        result.setInteger(0, argument.getInteger(0));
        result.setString(1, argument.getString(1).toUpperCase());
        result.setString(2, argument.getString(2));
        result.setString(3, argument.getString(3));
        result.setString(4, argument.getString(4));
        result.setString(5, argument.getString(5));
        functionCall.getOutputCollector().add(result);

如果我想更新 Tuple 并返回更新后的值。
我可以直接更新吗 TupleEntry 把它还给我。

5ssjco0h

5ssjco0h1#

对于第一个问题:不要将值设置为元组,而是添加。

Tuple result = new Tuple();
result.addInteger(argument.getInteger(0));
// ...

对你的第二个问题:是的。请参见此处的api文档:tupleentry.setobject
希望这有帮助:)

相关问题