【低水準API】
低水準API群では、PayloadContainerとStatusContainerを利用しHestiaとEISのメッセージハンドリングを行います。
Hestiaに対するメッセージのポーリングはAPI関数として用意しておりますが、EIS側で定期的にポーリングを実施する必要があります。
PayloadContainerとStatusContainerの詳細についてはAPIドキュメント及びJavaObjectのハンドリングを参照してください。
1Actionメッセージ送信時 †
以下に1アクションメッセージ送信時のシーケンス図を示します。
- 3. トランザクションオートコミットにオフを指定した場合はコミットが必要です。
- 5. EISより受信したメッセージがinvalidであった場合*1、JavaObject内のDUNS/TPA情報等に該当する設定がHestiaに存在しなかった場合など、取引先へ正常にメッセージが送信されないケースにおいてはこのタイミングでエラー内容を含むStatusContainerがBRIDGE.BUILD.MESSAGEとして生成されます。
- 6-7. 何らかの理由により取引先へのメッセージ送信に失敗した場合、通常は情報種毎に定義されたメッセージ再送間隔/再送回数に従いメッセージが再送されます。その都度、メッセージ再送を示すStatusContainerがBRIDGE.REPEAT.SENDで通知されます。
- 6. 取引先からAckを受信した場合はBRIDGE.SUCCESSが、Exceptionを受信した場合はBRIDGE.EXCEPTION.RECEIVEDが通知されます。PayloadとStatusはpipInstanceIDで関連付けすることができます。
1Actionメッセージ受信時 †
- 4. 取引先へReceiptAcknowledgmentメッセージを送信後、EISはPayloadContainerの受信が可能となります。2. においてメッセージのバリデーションに失敗した場合(XML検証失敗/電子署名検証失敗など)は、Exceptionが取引先へ送信され*2、EISへは通知されません。*3
- 6-7. 処理に成功した場合は成功した通知をBRIDGE.SUCCESSコードとともにHestiaへStatusContainerで通知しなければなりません。通知がなかった場合、または失敗コードが通知された場合、Hestiaは取引先へPIP0A1(NoF)の通知を試みます。*4
Status種別 †
種別コード | 用途 |
BRIDGE.SUCCESS | 成功の際に通知されます |
BRIDGE.REPEAT.SEND | PIPのメッセージガイドラインに定義された再送間隔、再送回数に従い再送が行われる際に通知されます |
BRIDGE.BUILD.MESSAGE | Hestia内部エラーによりEISで作成したメッセージから送信用プロセスの生成に失敗した場合に通知されます。メッセージのバリデーションエラーもこのコードに含まれます |
BRIDGE.FAILURE.PROCESS | NoFが送信される際にEISに通知されます |