2

私はこのように春にスケジューラタスクを設定しています:

<bean id="someSchedulerTask" class="org.springframework.scheduling.concurrent.ScheduledExecutorTask">
        <!-- start after 60 seconds -->
        <property name="delay" value="6000"/>
        <!-- depends on the enviroment -->
        <property name="period" value="${period}"/>
        <property name="runnable" ref="myScheduler"/>
    </bean>

プロパティperiodはいくつかの構成ファイルで設定されており、デフォルトのタイプは String のようです:

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'someSchedulerTask' defined in class path resource [context.xml]: Initialization of b
ean failed; nested exception is org.springframework.beans.TypeMismatchException: Failed to convert property value of type 'java.lang.String' to required type 'long' for property 'period'; nested exception is ja
va.lang.NumberFormatException: For input string: "period"

このステップで Stirng から Long に変更するにはどうすればよいですか??

前もって感謝します

EDIT プレースホルダー構成に問題はありません。別のBeanでこの構成ファイルの値をさらに使用しています。宣言:

period=30000
4

3 に答える 3