2015-01-02 1 views
1

Я пытаюсь создать шаг, на котором у меня есть два входа. Оба они должны быть в одном формате. Мне нужно обработать эти два входных потока и вывести один поток.Обработка нескольких входов на шаг чайника

Ниже приведен код, у меня до сих пор в processRow():

List<StreamInterface> infoStreams = meta.getStepIOMeta().getInfoStreams(); 

data.oneRowSet = findInputRowSet(infoStreams.get(0).getStepname()); 
data.twoRowSet = findInputRowSet(infoStreams.get(1).getStepname()); 

, если его первая строка и следующий для всех строк:

data.one = getRowFrom(data.oneRowSet); 
data.two = getRowFrom(data.twoRowSet); 

if (data.one == null && data.two == null) { 
     setOutputDone(); 
     return false; 
} 

Однако на линии data.oneRowSet = findInputRowSet(infoStreams.get(0).getStepname());, я получите следующую ошибку: The source step to read from [null] couldn't be found.

Ваши данные по этому вопросу были бы очень полезными. Благодарю.

EDIT: Я добавил пример трансформации и исходный код моего шага здесь: https://github.com/adeydas/KettleMultipleStreams/tree/develop

+0

У вас есть пример трансформации, для которого это не работает? Какие шаги подключены к вашему шагу, и каковы имена шагов? Появляются ли они в виде информационных шагов в ложке (т. Е. Вопросительный знак на стрелке перехода)? – mattyb

+0

У меня есть два этапа ввода CSV, подключенных к моему шагу. Они не отображаются как информационные шаги. Шаг, с которым они сходятся, - это то, что я пытаюсь создать. Преобразование примера здесь: https://github.com/adeydas/KettleMultipleStreams/blob/develop/multiple_test.ktr, а исходный код - https://github.com/adeydas/KettleMultipleStreams/tree/develop/src/main/Java/WS/abhis/чайник –

ответ