Jbossと言うJava EEサーバーでA、Bと言う2つの戦争を展開しています。
展開順になります
- 戦争A
- 戦争B
war B がデプロイされたら、メソッドを呼び出す必要があります。そのメソッドは、war のマニフェスト ファイルに記載されているクラス パスからのみロードされるクラスのインスタンスを作成します。
ServletContextListenerを使用しましたが、これは失敗しました。
注 : ServletContextListener をテストしました。インスタンス化する必要があるクラスの静的ブロックにサンプル コンテンツを指定し、ServletContextListener からインスタンスを作成しようとしました。しかし、「クラスを読み込めないランタイム例外」というエラーがスローされ、サンプル コンテンツも表示されません。さらに、JAVA_OPTS の -verbose:class オプションを介して確認されるクラスがサーバーにロードされます。
しかし、戦争 A からクラスをロードすると機能します。正常に機能します。そのようなインスタンスを作成する必要がある理由を説明するのは、大きなプロセスです。クラスのインスタンスが作成される方法を変更したくありません。
戦争後にメソッドを呼び出す他の方法はありますか?その依存関係はすべて完全に読み込まれますか?