2011-07-22 10 views
0

私は何年もの間、tomcatを使っていたJBossを初めて使いました。私は定期的に仕事をする必要があるSpring 3.0.xアプリケーションを持っています。これまで、私は単純に自分のジョブクラスを通常のPOJOとして作成し、SpringのCronTriggerBeanとして自分のjobDetailとしてMethodInvokingJobDetailFactoryBeanを渡してジョブ/トリガーを作成しました。Springジョブを実行するためのJBoss/Quartzの設定方法は?

例:この新しいプロジェクトで

<bean id="session.manage.UserSessionPurgeAction.trigger" class="org.springframework.scheduling.quartz.CronTriggerBean"> 
      <property name="cronExpression" value="0 */5 * * * ? *" /> 
      <property name="jobDetail"> 
        <bean class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> 
         <property name="name"><idref bean="session.manage.UserSessionPurgeAction" /></property> 
         <property name="group" value="cleanup" /> 
          <property name="targetObject" ref="session.manage.UserSessionPurgeAction" /> 
          <property name="targetMethod" value="execute" /> 
          <property name="concurrent" value="false" /> 
        </bean> 
      </property> 
    </bean> 

は、システムアーキテクトは、私は、JBossが内蔵水晶スケジューラを持っていることを知っていたJBoss 6.下Springアプリケーションを実行するために呼び出されたので、私はどのように確認していません私が過去に行ったように、アプリケーションにビルドするのではなく、JBossのスケジューラを使用していることを宣言してください。

私はオンラインで検索しましたが、必要なグルー情報が見つからないようです。私はjavax.ejbに@Scheduleアノテーションがあることを知っていますが、私はメソッドに追加する必要がありますか?私はどこかに追加の設定が必要だと思っています。

誰でも正しい方向に私を指摘できますか?

おかげで、

エリック

+1

あなたはすでにそうしたようにあなたのアプリにバンドルされた石英を使用し続けるだけで、うまくいくでしょう。 – skaffman

+0

あなたのアプリをそのまま実行しようとすると問題が発生しますか? – abalogh

+0

@abalogh:いいえ。 – skaffman

答えて

0

あなたが本当にJBossのいずれかを使用したい場合は、私がバンドルされたスケジューラの一つでSchedulerFactoryBeanに渡さschedulerNameプロパティをマッチングしようとするだろう。バンドルされたスケジューラーは、JNDI経由で取得できます。jndiという名前の「Quartz」の下にあります。

org.springframework.scheduling.quartz.SchedulerFactoryBean#createSchedulerを見ると、最初に静的SchedulerRepositoryでスケジューラをルックアップしようとします。

+0

チップをありがとう。これを検討していますが、すぐに質問が出るのは、コンテナレベルでスケジュールを設定できるかどうか、またはアプリでトリガーを設定する必要がある場合でも、すべてのトリガーをオン/オフ制御する必要がある場合ですコンテナ。 JBossでSpring Beanを呼び出すトリガを変更/設定する機能があるかどうか知っていますか? –

+0

私は組み込みのスケジューラーを使用していません。あなたは確かにJNDIまたはおそらく石英SchedulerRepository経由でアクセスすることができます。したがって、あなたは春の方法でトリガーを追加することができるはずです。私はjbossコンソールや他のコンテナツールからそれらを操作するように見えますが、わかりません。 – mrembisz

関連する問題