14.6.6. 例外処理の設定
Hibernate Search では、インデックスプロセスでの例外の処理方法を設定できます。設定が指定されていない場合、デフォルトでは例外がログ出力に記録されます。以下のように例外ロギングメカニズムを明示的に宣言できます。
hibernate.search.error_handler = log
デフォルトの例外処理は、同期インデックスと非同期インデックスの両方で行われます。Hibernate Search は、デフォルトのエラー処理実装を上書きする簡単なメカニズムを提供します。
独自の実装を提供するには、
ErrorHandler
インターフェイスを実装する必要があります。handle(ErrorContext context)
方法。ErrorContext
プライマリーへの参照を提供しますLuceneWork
インスタンス、根本的な例外およびその後の例外LuceneWork
主な例外のために処理できなかったインスタンス。
public interface ErrorContext { List<LuceneWork> getFailingOperations(); LuceneWork getOperationAtFault(); Throwable getThrowable(); boolean hasErrors(); }
このエラーハンドラーを Hibernate Search に登録するには、設定プロパティーで
ErrorHandler
実装の完全修飾クラス名を宣言する必要があります。
hibernate.search.error_handler = CustomerErrorHandler