Как пропустить пустые поля при чтении файла с помощью FlatFileItemReader?

Я читаю файл с разделителями-запятыми, который имеет два поля. Иногда файл может не содержать второе поле, поэтому Spring DelimitedLineTokenizer не должен жаловаться, когда это происходит. Указав следующее

            <property name="lineTokenizer">
                <bean
                    class="org.springframework.batch.item.file.transform.DelimitedLineTokenizer">
                    <property name="names"
                        value="planNumber, paymentAmount">
                    </property>
                    <property name="delimiter">
                        <value>,</value>
                    </property>
                </bean>
            </property>

Spring действительно жалуется

Caused by: org.springframework.batch.item.file.transform.IncorrectTokenCountException: Incorrect number of tokens found in record: expected 2 actual 1
    at org.springframework.batch.item.file.transform.AbstractLineTokenizer.tokenize(AbstractLineTokenizer.java:123)
    at org.springframework.batch.item.file.mapping.DefaultLineMapper.mapLine(DefaultLineMapper.java:46)
    ... 60 more

StringTokenizer не будет жаловаться, хотя

5
задан skaffman 13 March 2012 в 12:01
поделиться