2012-02-10 19 views
1

私はメソッド「のtestMethodは」の毎日11:50でオブジェクト「feedService」で呼び出されることを期待 のTomcat 7.0.23&春3.1&タスクスケジューラ複数の呼び出し

<task:scheduler id="feedServiceScheduler" pool-size="10"/> 
<task:scheduled-tasks scheduler="feedServiceScheduler">   


    <task:scheduled ref="feedService" method="testMethod" cron="0 50 11 * * *" /> 

</task:scheduled-tasks> 

ように私のspring.xmlに見えます年
何らかの理由で、testMethodが2回呼び出されましたが、私は問題の解決策を見つけることができません。

"feedService" beanは空想的なものではなく、単純なPOJOとテストメソッドがメッセージを出力します。

私が間違っているかもしれないことについての助けは素晴らしいでしょう。

ありがとうございました

+1

設定を2回ロードしましたか? (アプリコンテキストとウェブコンテキスト) – Ralph

+0

私は春のサーブレットをweb.xmlで宣言し、それと一緒にlog4jlistenerとorg.springframework.security.web.session.HttpSessionEventPublisherを持っています –

答えて

0

ここに同じ問題があります。 Tomcatは複数のサーブレットインスタンスを作成するので、スケジュールされたprocsは複数回スケジュールされます。あなたは、パフォーマンスの問題が発生することを多分唯一の1のサーブレットのインスタンスを実行するためにTomcatを制限するものでなければなら

[2012-03-22 11:03:00,001] [ClickCheatReportGenerator] DEBUG ClickCheatersender called ([email protected]8d01c) 

[2012-03-22 11:03:00,004] [ClickCheatReportGenerator] DEBUG ClickCheatersender called ([email protected]0870) 

[2012-03-22 11:03:00,004] [ClickCheatReportGenerator] DEBUG ClickCheatersender called ([email protected]f938) 

ここでは、異なるクラスで開始実行を見ることができる小さなログは、あります。

更新: 最後に、コントローラが処理するURLを呼び出すcronスケジュールを使用して問題を解決しました。

関連する問題