スタンドアロンの Java デーモン プログラムを weblogic 上の J2EE に移植するタスクがあります。
旧: Java プログラムは、プロパティー・ファイルで構成できる間隔に基づいて無限にループする 2 つのスレッドを開始します。
新規: プログラムは weblogic 10.1.x で実行され、デプロイ先の管理対象サーバーが開始されるか、サーブレットが初期化されると開始する必要があり、クライアントによって呼び出される必要はありません。
独自のスレッドを作成することは weblogic では非常に推奨されないことを既に知っているので、これを実現する別の方法を探します。私はすでにスタートアップクラスを介して試しましたが、それはサーバーが永遠にSTARTING状態のままであることを意味します。これは、プログラムが永久に実行されるように設計されているためです。サーバーが実際にスタートアップクラスが終了するのを待っているとは知りませんでした。私が知っている次善の策は、通常のサーブレットの URL を 1 回呼び出して、その中でプログラムの開始を実装することです。それでも、スレッドを作成してプログラム ロジックを非同期にせずに、ブラウザーがサーブレット呼び出しでハングアップするのを防ぐにはどうすればよいでしょうか (それは永久に実行されるため)。また、リスナーについて何か読んだことがありますが、それは私が探すべきものでしょうか?
最後にもう 1 つ、間違いなく weblogic で実行する必要があるため、他の解決策を提案しても役に立ちません。