Hitachi

Hitachi Microservices Platform - Paxos Commit Transaction Orchestrator ユーザーズガイド


6.2.7 @PctoBranchRollbackForアノテーション

説明

トランザクションブランチの属性を設定するアノテーションです。Entity-ServiceまたはEntity-Moduleで実行される任意のクラス、メソッドに指定できます。複数のメソッドに指定した場合は、最後に実行されたメソッドで設定した属性が有効になります。クラスレベルで指定することもできますが、メソッドレベルでの指定を推奨します。

rollbackOn属性、rollbackOnFamily属性でこのトランザクションをロールバックにマークするかどうかを決めるHTTPステータス、HTTPステータスファミリーを設定します。

トランザクションブランチのサービス終了後に動作するHMP-PCTOのフィルタが、HTTPステータスを判定してロールバックにマークしたかどうかをOrchestrator、およびParticipantに連絡します。ロールバックにマークしたトランザクションブランチが1つでもあると、グローバルトランザクションはロールバックします。

rollbackOn属性、rollbackOnFamily属性を両方指定した場合は、両方の設定値が有効です。

デフォルトの動作は、4xx、5xxをロールバックにマークします。

適用可能要素

クラス、メソッド

属性

@PctoBranchRollbackForアノテーションの属性の一覧を次の表に示します。

表6‒6 @PctoBranchRollbackForアノテーションの属性の一覧

属性名

説明

必須/任意

デフォルト値

rollbackOn

トランザクションにロールバックのマークを付ける必要があるHTTPステータスを設定します。

任意

javax.ws.rs.core.Response.Status[]

なし

rollbackOnFamily

トランザクションにロールバックのマークを付ける必要があるHTTPステータスファミリーを設定します。

任意

javax.ws.rs.core.Response.Status.Family[]

{javax.ws.rs.core.Response.Status.Family.CLIENT_ERROR, javax.ws.rs.core.Response.Status.Family.SERVER_ERROR}

パッケージ名称
jp.co.Hitachi.soft.hmppcto.interceptor