WebSphereアプリケーションサーバーに複数のWebアプリケーションがデプロイされています。両方のアプリケーションで標準JavaのImageIOが使用されていますが、 /作家。適切なスコープでjavax.imageio.spi.IIORegistryのインスタンスを取得する方法
質問は今、両方のアプリケーションがIIORegistry.getDefaultInstance()
を使用してサービスレジストリのインスタンスを取得し、両方のアプリケーションが同じインスタンスを取得するようです。内部的には、これは同じawt AppContextを返すAppContext.getAppContext()
に関連しています。同じライブラリを使用している両方のアプリケーションを気にせずに、JavaのImageIOを使用して複数のWebSphereアプリケーションを作成する適切な方法はありますか? WebSphereアプリケーション用のawt AppContextを手動で作成する必要がありますか?
返信いただきありがとうございます。実際には、あるWebアプリケーションのプラグインを他のWebアプリケーションのプラグインから隠すことになります。望ましくないNoClassDefFoundErrorsは、他の側が適切に動作することを妨げているので、両方のWebアプリケーションが同じライブラリセットを共有する必要があります(実現可能ですが、何らかの形で奇妙なものです)。 –
@ThomasWこれを実現する最も簡単な方法は、Webアプリケーションごとに1つずつ、複数のWebSphereインスタンスを実行することです。 – haraldK
@ThomasWそれを考えると、同じコンテナ内で可能かもしれません。しかし、Webアプリケーションコンテキストごとに 'ThreadGroup'を使うようにWebSphereを設定するには何らかの方法が必要です。それが可能かどうかわからないのですか?いずれにせよ、私は、異なるスレッドグループが実際に文書化されているように異なる 'IIORegistry'インスタンスを取得することを証明するための簡単なPoCを書いています。 – haraldK