ロー TCP/IP ソケットへのクライアント接続を作成し、その接続を介して外部アプリケーションにデータを送信するには、TCPIPClientOutput ノードを使用します。
TCPIPClientOutput ノードは、TCP/IP ポート上で listen しているリモート・サーバー・アプリケーションへの接続を開きます。 接続は、直接ノードによって行われるのではなく、WebSphere® Message Broker 実行グループによって管理される接続プールから入手されます。 実行グループは、デフォルトの TCPIPClient 構成可能サービスを使用して、ソケット接続に使用される属性を判別します。 しかし、このノード上で構成可能サービスが設定されている場合は、ホストやポート番号を含むすべてのプロパティーに構成可能サービスが使用されます。
TCP/IP ノードに対して SSL を使用するように、ブローカーを構成できます。SSL および TCP/IP ノードを参照してください。
TCPIPClient 構成可能サービスを使用して、処理の準備ができているクライアント接続のプールを作成します。 この機能を使用するには、minimumConnections プロパティーをゼロより大きな値に設定しなければなりません。 このように実行グループは、始動時に接続を作成し、最小値に達するまで接続の作成を続けることで、確実に指定数の接続が常時使用可能であるようにします。
このノードはクライアント接続を要求し、データの送信に使用できる接続がない場合は、出力ノードはプールが新しい接続を作成するよう要求します。 maximumConnections プロパティーを超過していない場合、新しい接続が作成されます。
接続が確立されていると、データが送信されます。 ノードの「データ・レコード送信タイムアウト」プロパティーで指定された時間制限内にデータが正常に送信されない場合には、例外がスローされます。
以下のローカル環境のプロパティーは、ノードで使用される TCP/IP 接続を指定変更できます。
ローカル環境中の場所 | 説明 |
---|---|
$LocalEnvironment/Destination/TCPIP/Output/Hostname | 接続を行うのに使用されるホスト名。 |
$LocalEnvironment/Destination/TCPIP/Output/Port | 接続を行うのに使用されるポート番号。 |
$LocalEnvironment/Destination/TCPIP/Output/Id | 使用されるソケットの ID。 この値は、WebSphere Message Broker で接続を一意的に識別するのに使用される内部 ID です。 |
$LocalEnvironment/Destination/TCPIP/Output/ReplyId | この接続上で保管されている応答 ID。 任意のテキスト・ストリングにすることができます。 |
$LocalEnvironment/Destination/TCPIP/Output/Timeout | データを TCP/IP クライアント接続に送信する際に使用されるタイムアウト値。 この値は、ノードで指定された「データ・レコード送信タイムアウト」プロパティーをオーバーライドします。 |
このプロパティーを使用すると、接続の詳細 (ホスト名とポート番号) および使用される接続 (ID) を動的に選択できます。 接続に応答 ID を設定することもできます。 応答 ID により、ストリングを接続中に格納して、ローカル環境で表示することができます。 この接続を使用して、他の TCP/IP ノードか、または WebSphere MQ などの他のトランスポートから応答 ID を保管できます。
ノードの出力には、入力と同じ情報が含まれており、入力から欠落したフィールドが、使用された接続からの詳細情報によって更新されます。 例えば、入力として「ID」プロパティーが提供されない (新しい接続を作成するか、プール接続を再利用するため) 場合、出力ローカル環境には、使用されている接続の ID が含まれます。
ローカル環境中の場所 | 説明 |
---|---|
$LocalEnvironment/WrittenDestination/TCPIP/Output/ConnectionDetails/Hostname | 接続を行うのに使用されるホスト名。 |
$LocalEnvironment/WrittenDestination/TCPIP/Output/ConnectionDetails/Port | 接続を行うのに使用されるポート番号。 |
$LocalEnvironment/WrittenDestination/TCPIP/Output/ConnectionDetails/OpenTimestamp | 初めて接続が開かれた時点のタイム・スタンプ。 |
$LocalEnvironment/WrittenDestination/TCPIP/Output/ConnectionDetails/CloseTimestamp | 接続が閉じた時点のタイム・スタンプ (まだ閉じていない場合はヌル)。 |
$LocalEnvironment/WrittenDestination/TCPIP/Output/ConnectionDetails/SequenceNumber | この接続上で受け取られるメッセージのシーケンス番号。 先頭レコードのシーケンス番号は 1 です。2 番目のレコードのシーケンス番号は 2 で、以後同様です。 |
$LocalEnvironment/WrittenDestination/TCPIP/Output/ConnectionDetails/Id | 使用されるソケットの ID。 この ID は、WebSphere Message Broker で接続を一意的に識別するのに使用される内部 ID です。 |
$LocalEnvironment/WrittenDestination/TCPIP/Output/ConnectionDetails/ReplyId | この接続上で保管されている応答 ID。 任意のテキスト・ストリングにすることができます。 |
TCP/IP トランスポートの使用中に接続が閉じると (またはその他のタイプの例外が発生すると)、例外がスローされます。 この例外は、Failure ターミナルが接続されている場合はこのターミナルに移動し、接続されていない場合は例外はフローの下流に戻されます。
このノードには Close 入力ターミナルもあります。 このターミナルにメッセージが送信されると、ノードとローカル環境で提供される詳細情報の組み合わせを使用して接続が閉じられます。
TCPIPClientOutput ノードはパレットの「TCPIP」ドロワーに入っていて、ワークベンチでは次のアイコンによって表されます。
サンプルに関する情報は、WebSphere Message Broker Toolkit に統合されているインフォメーション・センター、またはオンライン・インフォメーション・センターを使用する場合にのみ表示できます。 サンプルは、WebSphere Message Broker Toolkit に統合されているインフォメーション・センターを使用する場合にのみ実行できます。
TCPIPClientOutput ノードのインスタンスをメッセージ・フローに入れると、JMSReply ノードを構成することができます。(詳しくは、メッセージ・フロー・ノードの構成を参照してください。) ノードのプロパティーが、「プロパティー」ビューに表示されます。 値を入力する必要のある (デフォルト値が定義されていない) すべての必須プロパティーには、そのビュー内でアスタリスクのマークが付けられます。
TCPIPClientOutput ノードを構成するには、次のようにします。
TCPIPClientOutput ノードのターミナルについては、次の表に説明されています。
ターミナル | タイプ | 説明 |
---|---|---|
In | 入力データ | ノードが処理するメッセージを受け入れる入力ターミナル。 |
Close | 入力制御 | ローカル環境に与えられた接続が閉じる際に、メッセージがルーティングされる入力ターミナル。 |
Out | 出力データ | 外部リソースにメッセージが正常に送信された場合に、メッセージがルーティングされる出力ターミナル。 In ターミナルで受信されたメッセージは、Out ターミナルに伝搬され、状況情報の追加を除いて未変更のままになります。 |
Close | 出力制御 | Close 入力ターミナルから伝搬されるメッセージのルーティング先となる出力ターミナル。 |
Failure | 出力データ | ノード内で障害が検出された場合に、メッセージがルーティングされる出力ターミナル。 |
以下の表は、ノード・プロパティーについて説明しています。 M の見出しの列は、プロパティーが必須 かどうかを示します (デフォルトが定義されていない場合に値を入力することが必要なら、アスタリスクのマークが付きます)。 C の見出しの列は、プロパティーが構成可能 (メッセージ・フローを BAR ファイルに追加してデプロイするとき、値を変更できる) かどうかを示します。
プロパティー | M | C | デフォルト | 説明 |
---|---|---|---|---|
ノード名 | いいえ | いいえ | TCPIPClientOutput | ノードの名前。 |
簡略説明 | いいえ | いいえ | ノードの簡単な説明 | |
詳細説明 | いいえ | いいえ | メッセージ・フロー内のノードの目的を説明するテキスト |
TCPIPClientOutput ノードの基本プロパティーについては、次の表に説明されています。
プロパティー | M | C | デフォルト | 説明 | mqsiapplybaroverride コマンド・プロパティー |
---|---|---|---|---|---|
接続の詳細 | はい | はい | 使用するホスト名とポート番号か、または構成可能サービスの名前を含むストリング。 | connectionDetails | |
データ・レコード送信タイムアウト (秒) | はい | はい | 60 | データ送信の試行時にノードが待機する期間を指定します。 秒単位の任意の時間の長さを指定できます。 | timeoutSendingData |
TCPIPClientOutput ノードの拡張プロパティーについては、次の表に説明されています。
プロパティー | M | C | デフォルト | 説明 |
---|---|---|---|---|
接続のクローズ | はい | いいえ | いいえ | 接続をいつ閉じるか、あるいは開いたままにするかを制御します。有効なオプションは、以下のとおりです。
|
レコードの送信後に出力ストリームを閉じます。 | はい | いいえ | 選択されていない | データの送信後すぐに出力ストリームを閉じるかどうかを指定します。デフォルトでは、このプロパティーは選択されません。 |
出力ストリームの変更 | いいえ | いいえ | 変更しないでそのままにする | この出力ストリームを予約するか、それとも解放して、どの出力ノードでも使用されるようにプールに戻すかどうかを指定します。有効なオプションは、以下のとおりです。
|
入力ストリームの変更 | いいえ | いいえ | 変更しないでそのままにする | 接続 ID を指定する入力ノードと受信ノードのみが使用するように入力ストリームを予約するかどうか、またはメッセージ・フローの終わりに解放するかどうかを指定します。 有効なオプションは、以下のとおりです。
|
宛先: | はい | いいえ | 1 つの接続 | データを 1 つの接続に送信するか、それとも使用可能な接続に送信するかを指定します。 有効なオプションは、以下のとおりです。
|
TCPIPClientOutput ノードの「要求」プロパティーについては、次の表に説明されています。
プロパティー | M | C | デフォルト | 説明 |
---|---|---|---|---|
データのロケーション | はい | いいえ | $Body | 書き込まれるレコードを収容する入力メッセージ・ツリー内のロケーション。 |
ホスト名の場所 | はい | いいえ | $LocalEnvironment/Destination/TCPIP/Output/Hostname | ホスト名を含むメッセージ・エレメントの場所。 |
ポートの場所 | はい | いいえ | $LocalEnvironment/Destination/TCPIP/Output/Port | ポートを含むメッセージ・エレメントの場所。 |
ID の場所 | はい | いいえ | $LocalEnvironment/Destination/TCPIP/Output/Id | ID を含むメッセージ・エレメントの場所。 |
返信用 ID の場所 | はい | いいえ | $LocalEnvironment/Destination/TCPIP/Output/ReplyId | 応答 ID を含むメッセージ・エレメントの場所。 |
TCPIPClientOutput ノードの「レコードおよびエレメント」プロパティーについては、次の表に説明されています。
プロパティー | M | C | デフォルト | 説明 |
---|---|---|---|---|
レコード定義 | はい | いいえ | レコードは未変更データ | このプロパティーは、メッセージから派生するレコードをどのように書き込むかを制御します。 有効なオプションは、以下のとおりです。
|
長さ (バイト数) | はい | いいえ | 0 | 出力レコードの必要な長さ。 このプロパティーが適用されるのは、「レコード定義」に「レコードは固定長データ」を指定した場合のみです。 |
埋め込みバイト (16 進数) | はい | いいえ | 20 | 「レコード定義」に「レコードは固定長データ」が指定されているときに、短いメッセージへの埋め込みに使用される 2 桁の 16 進数バイト。 |
区切り文字 | はい | いいえ | ブローカー・システムの行終了 | 「レコード定義」に「レコードは区切り文字で区切られたデータ」が指定されている場合に使用される区切り文字。 有効なオプションは、以下のとおりです。
|
カスタム区切り文字 (16 進数) | いいえ | いいえ | なし | 「レコード定義」プロパティーに「レコードは区切り文字で区切られたデータ」が指定されていて、「区切り文字」プロパティーに「カスタム区切り文字 (16 進数)」が指定されている場合に使用される区切り文字バイト・シーケンス。 |
区切り文字タイプ | はい | いいえ | 後置 | このプロパティーは、「レコード定義」 に「レコードは区切り文字で区切られたデータ」が指定されている場合に、各レコードの間に区切り文字を挿入する方法を指定します。 有効なオプションは、以下のとおりです。
|
TCPIPClientOutput ノードの「妥当性検査」プロパティーについては、次の表に説明されています。
これらのプロパティーの詳細については、妥当性検査プロパティーを参照してください。
プロパティー | M | C | デフォルト | 説明 | mqsiapplybaroverride コマンド・プロパティー |
---|---|---|---|---|---|
妥当性検査 | いいえ | はい | 継承 | このプロパティーは、妥当性検査を行うかどうかを制御します。 有効な値は以下のとおりです。
|
validateMaster |
失敗時の処置 | いいえ | いいえ | 例外 | このプロパティーは、妥当性検査が失敗した場合の動作を制御します。 「妥当性検査」を「内容」または「内容と値」に設定した場合にのみ、このプロパティーを設定できます。 有効な値は以下のとおりです。
|
プロパティー | M | C | デフォルト | 説明 |
---|---|---|---|---|
イベント | いいえ | いいえ | なし | ノードに対して定義したイベントが、このタブに表示されます。 デフォルトでは、メッセージ・フローのどのノードに対してもモニター・イベントは定義されません。 ノードのモニター・イベントを作成、変更、または削除するには、「追加」、「編集」、および「削除」を使用します。詳しくは、モニター・プロパティーを使用したモニター・イベント・ソースの構成を参照してください。 「使用可能」チェック・ボックスを選択またはクリアすることによって、ここに表示されているイベントを使用可能および使用不可に設定できます。 |