2016-07-06 48 views
1

我使用弹簧整合FileSplitter并对有序处理文件使用FileMarker-s,但对于空文件,我得到IOException。如果没有文件标记,一切都正常工作用于空文件的弹簧整合文件标记

堆栈跟踪:

Caused by: java.io.IOException: Stream closed 
at java.io.BufferedReader.ensureOpen(BufferedReader.java:122) 
at java.io.BufferedReader.readLine(BufferedReader.java:317) 
at java.io.BufferedReader.readLine(BufferedReader.java:389) 
at org.springframework.integration.file.splitter.FileSplitter$1.hasNext(FileSplitter.java:183) 
... 50 more 

XML的配置:

<int:chain input-channel="channel.read.file" output-channel="channel.process.input"> 
    <int-file:splitter markers="true"/> 
    <int:filter expression="!(payload instanceof T(org.springframework.integration.file.splitter.FileSplitter.FileMarker))" 
      discard-channel="channel.process.file.marker"/> 
</int:chain> 

回答

0

听起来像一个错误,我 - 请打开JIRA Issue

+0

创建问题https://jira.spring.io/browse/INT-4067 –