| Interface | Description | 
|---|---|
| FwHeaderDefinition | 
 送受信電文中のフレームワーク制御ヘッダ項目に対する読み書きを行うモジュールが
 実装するインターフェース。
 具体的に電文中のどの部分をフレームワーク制御ヘッダの各項目に対応させるかについては、
 各具象クラスごとに異なる。 
 | 
| HttpMessageIdGenerator | 
 HTTP通信時に使用するメッセージID生成。 
 | 
| HttpSSLContextSettings | 
 SSL情報取得用クラス 
 | 
| MessageSenderClient | 
MessageSenderから呼び出される通信機能の基本APIの実装系を提供するモジュールが実装するインターフェース。 | 
| MessagingProvider | 
 メッセージング機能の基本API( 
MessagingContext)の実装系を提供する
 モジュールが実装するインターフェース。
 
 本インターフェースの実装系の切り替えによって多様なメッセージングミドルウェアに
 対応することができる。 | 
| SyncMessagingEventHook | 
 メッセージ送信の処理前後に処理を行うためのインターフェイス。 
 | 
| Class | Description | 
|---|---|
| FwHeader | 
 電文中のフレームワーク制御ヘッダ部の内容をMapとして格納するクラス。
 
 フレームワーク制御ヘッダ
  
本フレームワークが提供する機能の中には、電文中に特定の制御項目が定義されている ことを前提として設計されているものが多く存在する。 そのような制御項目のことを「フレームワーク制御ヘッダ」とよぶ。 フレームワーク制御ヘッダの一覧とそれを使用するハンドラの対応は以下のとおり。  | 
| InterSystemMessage<TSelf extends InterSystemMessage<?>> | 
 外部システムに対する送受信電文の内容を格納するデータオブジェクト。
 
 このオブジェクトは以下のデータを保持する。
 
  プロトコルヘッダー
  メッセージボディ
  
 | 
| InterSystemMessage.HeaderName | 
 フレームワークで使用する既定ヘッダーのフィールド名 
 | 
| MessageSender | 
 対外システムに対するメッセージの同期送信を行うユーティリティクラス。
 
 本ユーティリティはキューを使用した通信と、HTTP通信をサポートする。
 
 キューを使用した通信について 
本ユーティリティはフレームワーク制御ヘッダの利用を前提としており、 再送電文フラグを利用した再送/タイムアウト制御等の機能を実装している。 キューを使用した通信では、カレントスレッドに紐づけられている MessagingContextを利用してメッセージ送信を行う。
 そのため、MessagingContextHandlerをハンドラキューに追加する必要がある。
 MessagingContextの設定方法についてはMessageSenderSettings.MessageSenderSettings(String)を参照。 | 
| MessageSenderSettings | 
MessageSenderの設定情報を保持するクラス。 | 
| MessagingContext | 
 メッセージングサーバとの間に開かれるセッションに対するラッパー。
 このクラスのインスタンスはスレッドローカル変数上で管理されており、
  
MessagingContext.getInstance()を用いてインスタンスを獲得する。
 
 本クラスでは、以下の機能を提供する。
 
  メッセージ送信
  メッセージ同期送信
  メッセージ受信
  | 
| ReceivedMessage | 
 対外システムから受信した電文を表すクラス。 
 | 
| RequestMessage | 
 外部システムから受信した処理要求電文の内容を格納し、対応する応答電文を作成するクラス。
 
  
ReceivedMessageと比べて、以下の処理が追加されている。
 
     フレームワーク制御ヘッダ(FwHeader)を保持する
     応答電文(ResponseMessage)オブジェクトを作成する
 
 
 本クラスは以下のデータを格納する。 | 
| ResponseMessage | 
 本システムに対する要求電文への応答電文を表すクラス。
 
 本クラスでは、RequestMessageと同様、応答電文の内容をフレームワークヘッダ部と
 業務データ部に分離して管理しており、業務ロジックからは業務データ部しか操作できない
 ようになっている。
 
 メッセージボディを直列化する際には、フレームワークヘッダ部と業務データ部をそれぞれ
 直列化して連結したものを返す。 
 | 
| SendingMessage | 
 対外システムに対する仕向け要求電文を表すクラス。 
 | 
| StandardFwHeaderDefinition | 
 Nablarch標準のフレームワーク制御ヘッダ定義。
 
 本実装では、各電文のメッセージボディの先頭レコード上に
 全てのフレームワーク制御ヘッダが定義されていることを前提としており、
 JMSヘッダー等のメッセージングプロバイダ実装に依存する項目は使用しない。
 
 以下は本クラスで使用できるフレームワーク制御ヘッダの定義例である。
 このデータレコードが電文の先頭に位置している必要がある。 
 | 
| StructuredRequestMessage | 
 構造化されたデータを取り扱うために、返信用オブジェクトとして 
StructuredResponseMessageを返却する要求メッセージ。 | 
| StructuredResponseMessage | 
 構造化されたデータを取り扱うために、addRecord時にデータをすぐに書き込まず、メモリ上にキャッシュする応答メッセージ。 
 | 
| SyncMessage | 
 電文(同期送信、同期応答)を保持するクラス。 
 | 
| SyncMessageConvertor | 
 メッセージ同期送信に使用する電文を変換するクラス。 
 | 
| Enum | Description | 
|---|---|
| MessageSenderSettings.SettingType | 
 設定値のタイプを表す列挙型。 
 | 
| Exception | Description | 
|---|---|
| ErrorResponseMessage | 
 エラー応答として送信する電文情報を含んだ実行時例外。
 
 本クラスを送出することで、業務トランザクションはロールバックしつつ、
 任意の内容の応答電文を送信することができる。 
 | 
| MessageReadError | 
 メッセージデータリーダによる受信電文の読み込み処理の最中にエラーが発生した場合に
 送出される例外。
 
 受信電文のGETには成功したが、フレームワークヘッダ領域の読み込みに失敗した場合に
 送出される。
 
 この例外が送出された場合、業務処理へのディスパッチは発生しない。 
 | 
| MessageSendSyncTimeoutException | 
 送信した電文に対する応答電文をタイムアウト時間内に受信することができなかった場合に
 送出される例外。 
 | 
| MessagingException | 
 メッセージ処理において問題が発生した場合に送出される実行時例外。 
 |