0

私の仕事を実行している間、私は例外を下回っています

Bean プロパティ 'dataSource' の設定中に Bean 'springbatch.readerDataSource' への参照を解決できません。ネストされた例外は org.springframework.beans.factory.NoSuchBeanDefinitionException: 'springbatch.readerDataSource' という名前の Bean が org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:329) で定義されていません

注 - 私は別のリーダー ファイルを作成していません。JdbcCursorItemReader を使用しています。

私の設定ファイル

<bean id="itemReader" 
        class="org.springframework.batch.item.database.JdbcCursorItemReader" scope="step">
        <property name="dataSource" ref="springbatch.batchDataSource"/>
        <property name="sql"  
                  value=
                    "select Cust_Id  from Customer   "/>
        <property name="rowMapper">
            <bean class="com.insurance.premiumrecalculation.batch.CustDto" />
         </property>
    </bean>

    <bean id="policy.premium.recalculation.PremiumRecalculationWriter" 
        class="com.insurance.premiumrecalculation.batch.PremiumRecalculationProcessWriter" scope="step"/>

    <batch:job id="policy.job.premiumRecalculation" 
        job-repository="springbatch.jobRepository" parent="springbatch.job.baseJob">

        <batch:step id="policy.step.premiumrecalculation" parent="springbatch.step.baseStep">
            <batch:tasklet allow-start-if-complete="false" transaction-manager="powTransactionManager">                                   
                <batch:chunk commit-interval="10"                    
                    reader="itemReader"
                    writer="policy.premium.recalculation.PremiumRecalculationWriter"/>                    
            </batch:tasklet>
        </batch:step>
    </batch:job>

前もって感謝します

4

1 に答える 1

0

このエラーの原因は次の行です。

<property name="dataSource" ref="springbatch.batchDataSource"/>

つまり、存在しないように見える環境のデータ ソースとして構成された ID "springbatch.batchDataSource" を持つ Bean 定義が必要です。以下をテンプレートとして使用できます。データベース ドライバと接続情報を提供することを忘れないでください。

<bean id="springbatch.batchDataSource" class="org.apache.commons.dbcp.BasicDataSource">
    <property name="driverClassName" value="org.hsqldb.jdbcDriver" />
    <property name="url" value="jdbc:hsqldb:mem:testdb" />
    <property name="username" value="sa" />
    <property name="password" value="" />
</bean>
于 2013-02-15T11:11:00.587 に答える