2.2.5. シリアル化コンテキストイニシャライザーの登録
組み込みキャッシュの場合、Data Grid は java.util.ServiceLoader を使用してアノテーションが付けられた SerializationContextInitializer 実装にシリアル化コンテキストおよびマーシャラーを自動的に登録します。
必要に応じて、SerializationContextInitializer 実装の自動登録を無効にして、手動で登録することができます。
重要
1 つの SerializationContextInitializer 実装を手動で登録する場合は、自動登録が無効になります。その後、他のすべての実装を手動で登録する必要があります。
手順
AutoProtoSchemaBuilder.serviceアノテーションにfalseの値を設定します。@AutoProtoSchemaBuilder( includeClasses = SomeClass.class, ... service = false )-
以下の例のように、プログラムまたは宣言的に
SerializationContextInitializer実装を手動で登録します。
宣言的
<serialization>
<context-initializer class="org.infinispan.example.LibraryInitializerImpl"/>
<context-initializer class="org.infinispan.example.another.SCIImpl"/>
</serialization>
プログラマティック
GlobalConfigurationBuilder builder = new GlobalConfigurationBuilder();
builder.serialization()
.addContextInitializers(new LibraryInitializerImpl(), new SCIImpl());