2011-09-14 8 views
4

私はこの回答を見つけました: 1.データソースに必要なクォーツに対する長い答えですが、もっと深い答えが必要な場合は、ソースコードを掘り下げたり、もっと研究しなければならないと思います: a。 JobStoreCMTは、Quartzを使用しているアプリケーションによって管理されているトランザクションに依存します。 JTAトランザクションは、ジョブ/トリガーをスケジュール(またはスケジュール解除)しようとする前に進行中でなければなりません。これにより、スケジューリングの「作業」をアプリケーションの「より大きな」トランザクションの一部にすることができます。 JobStoreCMTは実際には、アプリケーションサーバー(JTA経由)で管理される接続のトランザクションと、グローバル(JTA)トランザクションに参加しない接続を持つ1つのデータソースの2つのデータソースを使用する必要があります。 JobStoreCMTは、アプリケーションがJTAトランザクション(EJBセッションBeanなど)を使用して作業を実行する場合に適しています。 (Ref; http://quartz-scheduler.org/documentation/quartz-1.x/configuration/ConfigJobStoreCMTQuartz Scheduler(JobSToreCMT)は2つのデータソースを必要とするのはなぜですか?

ただし、私たちの特定のアプリケーションでは、非トランザクションドライバとの間で信用があります。 Quartz(JobsStoreCMT)がちょうどトランザクション型のデータソースで動作することができるかどうかは誰にも分かりますか?

答えて

4

Quartz(JobsStoreCMT)が単なるトランザクションデータソースで動作することができますか?

いいえ、それぞれのタイプのデータソースが必要です。クライアントアプリケーションによるAPIの呼び出しは、XA対応の接続を使用するため、ワークジョインはアプリケーションのトランザクションとなります。スケジューラーの内部スレッドによって行われた作業は、非XA接続を使用します。