创建FlatFileItemWriter Bean

时间:2018-08-16 19:42:07

标签: java spring spring-boot spring-batch

当我调用批处理程序时,在此行上出现空指针异常:

String fileName = ((Map<String, MccFtpFile>) ec.get(AbstractSetupTasklet.BATCH_FTP_FILES)).get("scacFile").getLocalFile();

这是整个班级

 // Writer
        @Bean(name = "clf010Writer")
        @StepScope
        public FlatFileItemWriter<Clf010Item> clfWriter(@Value("#{jobExecutionContext}") Map<Object, Object> ec, //
                @Qualifier("clf010LineAggregator") FormatterLineAggregator<Clf010Item> lineAgg) throws IOException {
            @SuppressWarnings("unchecked")
            String fileName = ((Map<String, MccFtpFile>) ec.get(AbstractSetupTasklet.BATCH_FTP_FILES)).get("scacFile").getLocalFile();
            //Ensure the file can exist.
            PrintWriter fos = getIoHarness().getFileOutputStream(fileName);
            fos.close();
            FlatFileItemWriter<Clf010Item> writer = new FlatFileItemWriter<>();
            writer.setResource(new FileSystemResource(fileName));
            writer.setLineAggregator(lineAgg);
            return writer;
        }

我似乎无法找出问题所在。我的猜测是正在寻找找不到的文件?如果有人有什么见识或信息,我将不胜感激。

1 个答案:

答案 0 :(得分:0)

我没有意识到,但是在我的设置任务中,我需要声明一个新的ftp文件:)感谢您的帮助