スケジューラジョブによって制御されるポーリングフィルタクラス(FClass)にSpring Beanを注入することは可能ですか?ここでシングルトンがどのように適用されるのかよくわかりません。
春の豆はシングルトンであることを理解しているので、春の豆をクラスFClassに注入するために。FClassをBeanとして定義し、DIをプロパティなどとして追加する必要があります。
では、FClassがシングルトンである必要があるかどうかをどのように知ることができますか?シングルトンであるクラスのみを作成してBeanを作成し、それらに対してDIを実行できると思います。
私の問題は:
ファサードBeanxfacadeをFClassに注入できる必要があります。x_facacdeはdaoオブジェクトを処理します。Y_daoとZ_hibernateセッションBeanがDIとして注入されています。
StatusPollingFilter(FClass)のスプリングBeanを作成し、ファサードBeanを注入しようとすると、nullが発生し、デバッグモードで注入のためにセッターが呼び出されることはありません。
問題:StatusPollingFilterのスレッド/スケジューラーの性質に関係している可能性があると思います。SpringBeanはシングルトンであるため、そのために機能しない可能性があります。
StatusPollingFilter(FClass)のファクトリを作成することを考えています。しかし、これが正しいことであるかどうかを知る必要があります。問題がどこかにある可能性があるため、あまりにも多くの作業を行い、それでも機能しないことに気付く前に、私は正しい方向に進んでいます。理想的には、可能な限り最も簡単な方法でテーブルを更新したいだけです。しかし、DAOが存在するため、Hibernateを使用する必要がありますが、Hibernateは
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
with /hibernate/TopoObject.hbm.xml
ファイル。
したがって、これをどのように試しても、セッションまたは挿入されたファサードBeanで常にnullポインター例外が発生します。ここでQAの一部を読み取ると、StatusPollingFilterがスケジューラーを使用してインスタンス化され、スプリングではなく、DIBeanを認識できないためのように見えます。上記のファクトリパターンはここで役立ちます。
私は追加の問題を抱えているかもしれませんが、私がそれに来るとき、私はその橋を渡ります。しかし、簡単に言うと、誰かが私が遭遇する可能性のある問題を知っている場合に備えて...スケジューラがインスタンスのファクトリを呼び出す方法/方法がわからない-すべてがサードパーティのAPIによって制御されている-これはStatusPollingFilterを呼び出しますが私は ' mファクトリをクラスおよびパラメータとして渡すと、それが通り抜けると仮定します...しかし、最初の部分が主な質問です。後者のワッフルは無視してください。前もって感謝します。