2016-05-12 33 views
1

スケジュールされたSpringのcronジョブがスケジュールされた時間内に2回実行されています。Spring @Scheduled注釈メソッドが所定の時間内に複数回実行される

スプリング4.2.5バージョンを使用しています。

REST API - > Jersey + Spring Integration。

web.xml以下のとおりです。

<context-param> 
    <param-name>contextConfigLocation</param-name> 
    <param-value>classpath:applicationContext.xml</param-value> 
</context-param> 
<listener> 
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 
</listener> 
<servlet> 
    <servlet-name>REST-Service-Servlet</servlet-name> 
    <servlet-class>com.sun.jersey.spi.spring.container.servlet.SpringServlet</servlet-class>  
    <init-param> 
     <param-name>com.sun.jersey.config.provider.packages</param-name> 
     <param-value>RESTController</param-value> 
    </init-param>  
    <init-param> 
     <param-name>com.sun.jersey.spi.container.ContainerResponseFilters</param-name> 
     <param-value>com.om.ResponseCorsFilter</param-value> 
    </init-param> 
    <init-param> 
     <param-name>com.sun.jersey.api.json.POJOMappingFeature</param-name> 
     <param-value>true</param-value> 
    </init-param> 
    <init-param> 
     <param-name>com.sun.jersey.spi.container.ContainerResponseFilters</param-name> 
     <param-value>com.sun.jersey.api.container.filter.LoggingFilter</param-value> 
    </init-param> 
    <load-on-startup>1</load-on-startup> 
</servlet> 
<servlet-mapping> 
    <servlet-name>REST-Service-Servlet</servlet-name> 
<url-pattern>/api/*</url-pattern> 
タスクエントリのための

春のアプリケーションコンテキストxmlファイル。

<task:annotation-driven/> 

春豆は以下の通りです。

@Component("springBean") 
public class SpringBean { 

@Scheduled(cron = "0 35 23 * * ?") 
public void job() {....} 
+0

[MCVE]を入力して、それを2回検出する方法を説明してください。 –

+0

2回実行している場合、設定を2回ロードしています... –

+0

設定ファイルで "SpringBean"を定義すると、2回実行されます。 –

答えて

0

ありがとうございました。問題は解決しました。

解決方法:同じBeanを2回ロードしていたので、重複したBeanを削除しました。

関連する問題