Liberty サーバーで提供されている com.ibm.wsspi.kernel.security.thread.ThreadIdentityService インターフェースを実装することにより、カスタム・スレッド ID サービス・クラスを開発することができます。ThreadIdentityService インターフェースは、ユーザー ID の切り替えの通知を受け取るためのサポートを使用可能にするサービス・プログラミング・インターフェース (SPI) です。
手順
- ThreadIdentityService インターフェースを実装して、カスタム・スレッド ID サービスを作成します。
- 実装クラスを OSGi サービスに変換します。 次の 2 つの方法のいずれかで変換を行うことができます。
- ご使用の ThreadIdentityService クラスを Declarative Service (DS) コンポーネントに変換します。 詳しくは、OSGi Declarative Services に対するサービスの宣言を参照してください。
- DS コンポーネントである新しい ThreadIdentityService クラスを作成し、それをご使用の ThreadIdentityService クラスに委任します。OSGi コア API を使用して、ご使用の ThreadIdentityService クラスをサービス・レジストリー (SR) に直接登録します。 詳しくは、OSGi サービス・レジストリーの使用を参照してください。
- カスタム・スレッド ID サービスを OSGi バンドルとしてパッケージし、ThreadIdentityService サービスをエクスポートします。 OSGi バンドルの作成については、『OSGi サービス・バンドルの作成』を参照してください。
- フィーチャー・マニフェストを作成して、この OSGi バンドルを組み込みます。 詳しくは、製品拡張を参照してください。
- フィーチャーがユーザー製品拡張ロケーションにインストールされた後、
そのフィーチャー名を指定して server.xml ファイル
を構成します。
<featureManager>
...
<feature>usr:sampleThreadIdentityService-1.0</feature>
</featureManager>