2016-08-02 5 views
0

Im Frühjahr Batch doc (http://docs.spring.io/spring-batch/reference/html/scalability.html), unter 7.4.3 Abschnitt wird angegeben, dass wir die Eigenschaft 'resource' von MultiResourceItemReader aus stepExecutionContext setzen können. Aber in MultiResourceItemReader gibt es keine Eigenschaft namens "resource", sondern "resources". Dann wie einzelne Ressource zu MultiResourceItemReader aus stepExecutionContext festgelegt werden kann, die einzelnen DateiName in jedem Kontext haben, der während der Partitionierung festgelegt wurde.Keine Eigenschaft namens 'resource' in MultiResourceItemReader

Antwort

0

Stattdessen nennt man resources (das ist ein Array) und es kann wie so eingestellt werden:

<bean id="multiResourceReader" 
      class=" org.springframework.batch.item.file.MultiResourceItemReader"> 
    <property name="resources" value="file:some/folder/prefix*.csv" /> 
    <property name="delegate" ref="flatFileItemReader" /> 
</bean> 

Wenn Partitionierung, würden Sie nicht einen MultiResourceItemReader verwenden. Verwenden Sie stattdessen einfach einen FlatFileItemReader im Step-Bereich.

<bean id="flatFileItemReader" scope="step" 
      class="org.springframework.batch.item.file.FlatFileItemReader"> 
    <property name="resource" value="file:#{stepExecutionContext['FILE.NAME']}"> 
</bean> 
+0

Das bedeutet, Spring-Dokument muss korrigiert/aktualisiert werden. Danke für die Antwort @DeanClark. – BSM

+0

Scheint so. Bitte geben Sie an, dass diese Antwort richtig war, damit andere sie nicht als unbeantwortet betrachten. –

Verwandte Themen