55.2. URI 形式


SAP コンポーネントによって提供されるエンドポイントには、リモートファンクションコール (RFC) エンドポイントと中間ドキュメント (IDoc) エンドポイントの 2 種類があります。

RFC エンドポイントの URI 形式は次のとおりです。

sap-srfc-destination:destinationName:rfcName
sap-trfc-destination:destinationName:rfcName
sap-qrfc-destination:destinationName:queueName:rfcName
sap-srfc-server:serverName:rfcName[?options]
sap-trfc-server:serverName:rfcName[?options]

IDoc エンドポイントの URI 形式は次のとおりです。

sap-idoc-destination:destinationName:idocType[:idocTypeExtension[:systemRelease[:applicationRelease]]]
sap-idoclist-destination:destinationName:idocType[:idocTypeExtension[:systemRelease[:applicationRelease]]]
sap-qidoc-destination:destinationName:queueName:idocType[:idocTypeExtension[:systemRelease[:applicationRelease]]]
sap-qidoclist-destination:destinationName:queueName:idocType[:idocTypeExtension[:systemRelease[:applicationRelease]]]
sap-idoclist-server:serverName:idocType[:idocTypeExtension[:systemRelease[:applicationRelease]]][?options]

sap- endpointKind -destination で始まる URI 形式は、宛先エンドポイント (つまり、Camel producer エンドポイント) を定義するために使用され、destinationName は SAP インスタンスへの特定のアウトバウンド接続の名前です。アウトバウンド接続は、コンポーネントレベルで名前が付けられ、設定されます。

sap- endpointKind -server で始まる URI 形式は、サーバーエンドポイント (つまり、Camel consumer エンドポイント) を定義するために使用され、serverName は SAP インスタンスからの特定のインバウンド接続の名前です。インバウンド接続は、コンポーネントレベルで名前が付けられ、設定されます。

RFC エンドポイント URI のその他のコンポーネントは次のとおりです。

rfcName
(必須) 宛先エンドポイント URI では、接続された SAP インスタンスのエンドポイントによって呼び出される RFC の名前です。サーバーエンドポイント URI では、接続された SAP インスタンスから呼び出されたときにエンドポイントによって処理される RFC の名前です。
queueName
このエンドポイントが SAP リクエストを送信するキューを指定します。

IDoc エンドポイント URI のその他のコンポーネントは次のとおりです。

idocType
(必須) このエンドポイントによって生成される IDoc の基本 IDoc タイプを指定します。
idocTypeExtension
このエンドポイントによって生成された IDoc の IDoc タイプ拡張 (存在する場合) を指定します。
systemRelease
このエンドポイントによって生成された IDoc に関連付けられている SAP Basis Release がある場合は、それを指定します。
applicationRelease
このエンドポイントによって生成された IDoc の関連付けられたアプリケーションリリースがある場合は、それを指定します。
queueName
このエンドポイントが SAP リクエストを送信するキューを指定します。

55.2.1. RFC 宛先エンドポイントのオプション

RFC 宛先エンドポイント (sap-srfc-destinationsap-trfc-destination、および sap-qrfc-destination) は、次の URI オプションをサポートしています。

名前デフォルト説明

stateful

false

true の場合、このエンドポイントが SAP ステートフルセッションを開始することを指定します

transacted

false

true の場合、このエンドポイントが SAP トランザクションを開始することを指定します

55.2.2. RFC サーバーエンドポイントのオプション

SAP RFC サーバーエンドポイント (sap-srfc-server および sap-trfc-server) は、次の URI オプションをサポートしています。

名前デフォルト説明

stateful

false

true の場合、このエンドポイントが SAP ステートフルセッションを開始することを指定します。

propagateExceptions

false

(sap-trfc-server エンドポイントのみ) true の場合、エクスチェンジの例外ハンドラーではなく、このエンドポイントが SAP の呼び出し元に例外を伝達することを指定します。

55.2.3. IDoc List Server エンドポイントのオプション

SAP IDoc List Server エンドポイント (sap-idoclist-server) は、次の URI オプションをサポートしています。

名前デフォルト説明

stateful

false

true の場合、このエンドポイントが SAP ステートフルセッションを開始することを指定します。

propagateExceptions

false

true の場合、エクスチェンジの例外ハンドラーではなく、このエンドポイントが SAP の呼び出し元に例外を伝搬することを指定します。

55.2.4. RFC および IDoc エンドポイントの概要

SAP コンポーネントパッケージは、次の RFC および IDoc エンドポイントを提供します。

sap-srfc-destination

Camel SAP Synchronous Remote Function Call Destination Camel コンポーネント。このエンドポイントは、Camel ルートが SAP システムへのリクエストと SAP システムからのレスポンスの同期配信を必要とする場合に使用する必要があります。

注記

このコンポーネントで使用される sRFC プロトコルは、SAP システムとの間でリクエストとレスポンスを ベストエフォート で配信します。リクエストの送信中に通信エラーが発生した場合、受信側の SAP システムでのリモート関数呼び出しの完了ステータスは 不明 のままです。

sap-trfc-destination

Camel SAP Transactional Remote Function Call Destination Camel コンポーネント。このエンドポイントは、リクエストを受信側の SAP システムに 最大 1 回 配信する必要がある場合に使用する必要があります。これを達成するために、コンポーネントはトランザクション ID tid を生成します。この ID は、ルートのエクスチェンジでコンポーネントを介して送信されるすべてのリクエストに付随します。受信側の SAP システムは、リクエストを配信する前に、リクエストに付随する tid を記録します。SAP システムが同じ tid のリクエストを再度受信した場合、リクエストは配信されません。したがって、このコンポーネントのエンドポイントを介してリクエストを送信するときにルートで通信エラーが発生した場合、ルートは同じリクエスト内でリクエストの送信を再試行できますが、配信と実行は 1 回だけです。

注記

このコンポーネントで使用される tRFC プロトコルは非同期であり、レスポンスを返しません。したがって、このコンポーネントのエンドポイントはレスポンスメッセージを返しません。

注記

このコンポーネントは、エンドポイントを介した一連のリクエストの順序を保証しません。これらのリクエストの配信および実行順序は、通信エラーやリクエストの再送信により、受信側の SAP システムで異なる場合があります。配送順序の保証については、Camel SAP Queued Remote Function Call Destination Camel コンポーネントを参照してください。

sap-qrfc-destination

Camel SAP Queued Remote Function Call Destination Camel コンポーネント。このコンポーネントは、Transactional Remote Function Call Destination camel コンポーネントの機能を、そのエンドポイントを介したリクエストの配信に 順番に 配信保証を追加することで拡張します。このエンドポイントは、一連のリクエストが相互に依存しており、受信側の SAP システムに 最大 1 回順番に 配信する必要がある場合に使用する必要があります。このコンポーネントは、Camel SAP Transactional Remote Function Call Destination Camel コンポーネントと同じメカニズムを使用して、最大 1 回の 配信保証を実現します。順序の保証は、SAP システムが受信した順序でリクエストを 受信キュー にシリアル化することによって実現されます。受信キューは、SAP 内の QIN スケジューラー によって処理されます。インバウンドキューが アクティブ化される と、QIN スケジューラーはキューリクエストを順番に実行します。

注記

このコンポーネントで使用される qRFC プロトコルは非同期であり、レスポンスを返しません。したがって、このコンポーネントのエンドポイントはレスポンスメッセージを返しません。

sap-srfc-server
Camel SAP Synchronous Remote Function Call Server Camel コンポーネント。このコンポーネントとそのエンドポイントは、SAP システムからの要求と SAP システムへの応答を同期的に処理するために Camel ルートが必要な場合に使用する必要があります。
sap-trfc-server
Camel SAP Transactional Remote Function Call Server Camel コンポーネント。このエンドポイントは、送信側の SAP システムがリクエストを Camel ルートに 最大 1 回 配信する必要がある場合に使用する必要があります。これを実現するために、送信側の SAP システムは、コンポーネントのエンドポイントに送信するすべてのリクエストに付随するトランザクション ID tid を生成します。送信側の SAP システムは、tid に関連付けられた一連のリクエストを送信する前に、コンポーネントが特定の tid を受信したかどうかを最初にチェックします。コンポーネントは、保持している受信 tid のリストをチェックし、送信された tid がそのリストにない場合は記録し、送信 SAP システムに応答して、tid がすでに記録されているかどうかを示します。送信側の SAP システムは、tid が以前に記録されていない場合にのみ、一連のリクエストを送信します。これにより、送信側の SAP システムは一連のリクエストを確実に camel ルートに 1 回送信できます。
sap-idoc-destination
Camel SAP IDoc Destination Camel コンポーネント。このエンドポイントは、Camel ルートが Intermediate Documents (IDoc) のリストを SAP システムに送信する場合に使用する必要があります。
sap-idoclist-destination
Camel SAP IDoc List Destination Camel コンポーネント。このエンドポイントは、Camel ルートが Intermediate Documents (IDoc) リストのリストを SAP システムに送信する場合に使用する必要があります。
sap-qidoc-destination
Camel SAP Queued IDoc Destination Camel コンポーネント。このコンポーネントとそのエンドポイントは、中間ドキュメント (IDoc) のリストを順番に SAP システムに送信するために Camel ルートが必要な場合に使用する必要があります。
sap-qidoclist-destination
Camel SAP Queued IDoc List Destination Camel コンポーネント。このコンポーネントとそのエンドポイントは、キャメルルートが Intermediate Documents (IDoc) リストを順番に SAP システムに送信する場合に使用されます。
sap-idoclist-server
Camel SAP IDoc List Server Camel コンポーネント。このエンドポイントは、送信側の SAP システムが中間ドキュメントリストを Camel ルートに配信する必要がある場合に使用する必要があります。このコンポーネントは、sap-trfc-server-standalone クイックスタートで説明されているように、tRFC プロトコルを使用して SAP と通信します。

55.2.5. SAP RFC 宛先エンドポイント

RFC 宛先エンドポイントは、SAP へのアウトバウンド通信をサポートします。これにより、これらのエンドポイントは、SAP の ABAP 関数モジュールへの RFC 呼び出しを行うことができます。RFC 宛先エンドポイントは、SAP インスタンスへの特定の接続を介して特定の ABAP 関数への RFC 呼び出しを行うように設定されています。RFC 宛先は、アウトバウンド接続の論理的な指定であり、一意の名前を持っています。RFC 宛先は、宛先データ と呼ばれる一連の接続パラメーターによって指定されます。

RFC 宛先エンドポイントは、受信した IN-OUT エクスチェンジの入力メッセージから RFC リクエストを抽出し、そのリクエストを関数呼び出しで SAP にディスパッチします。関数呼び出しからのレスポンスは、エクスチェンジの出力メッセージで返されます。SAP RFC 宛先エンドポイントはアウトバウンド通信のみをサポートするため、RFC 宛先エンドポイントは producer の作成のみをサポートします。

55.2.6. SAP RFC サーバーエンドポイント

RFC サーバーエンドポイントは、SAP からのインバウンド通信をサポートします。これにより、SAP の ABAP アプリケーションがサーバーエンドポイントに対して RFC 呼び出しを行うことができます。ABAP アプリケーションは、リモート関数モジュールであるかのように RFC サーバーエンドポイントと対話します。RFC サーバーエンドポイントは、SAP インスタンスから特定の接続を介して特定の RFC 関数への RFC 呼び出しを受信するように設定されています。RFC サーバーは、インバウンド接続の論理的な指定であり、一意の名前を持っています。RFC サーバーは、サーバーデータ と呼ばれる一連の接続パラメーターによって指定されます。

RFC サーバーエンドポイントは、入力 RFC リクエストを処理し、それを IN-OUT エクスチェンジの入力メッセージとしてディスパッチします。エクスチェンジの出力メッセージは、RFC 呼び出しのレスポンスとして返されます。SAP RFC サーバーエンドポイントはインバウンド通信のみをサポートするため、RFC サーバーエンドポイントは consumer の作成のみをサポートします。

55.2.7. SAP IDoc および IDoc リストの宛先エンドポイント

IDoc 宛先エンドポイントは、SAP へのアウトバウンド通信をサポートします。SAP は、IDoc メッセージに対してさらに処理を実行できます。IDoc ドキュメントはビジネストランザクションを表し、非 SAP システムと簡単にエクスチェンジできます。IDoc 宛先は、宛先データ と呼ばれる一連の接続パラメーターによって指定されます。

IDoc リスト宛先エンドポイントは、処理するメッセージが IDoc ドキュメントの リスト で設定されることを除いて、IDoc 宛先エンドポイントに似ています。

55.2.8. SAP IDoc リストサーバーエンドポイント

IDoc リストサーバーエンドポイントは、SAP からのインバウンド通信をサポートし、Camel ルートが SAP システムから IDoc ドキュメントのリストを受信できるようにします。IDoc リストサーバーは、サーバーデータ と呼ばれる一連の接続パラメーターによって指定されます。

55.2.9. メタデータリポジトリー

メタデータリポジトリーは、次の種類のメタデータを格納するために使用されます。

汎用モジュールのインタフェース説明
このメタデータは、JCo および ABAP ランタイムによって使用され、RFC 呼び出しをチェックして、それらの呼び出しをディスパッチする前に、通信パートナー間でタイプセーフなデータ転送を保証します。リポジトリーには、リポジトリーデータが取り込まれます。リポジトリーデータは、名前付き関数テンプレートのマップです。関数テンプレートには、関数モジュールとの間で渡されるすべてのパラメーターとその入力情報を記述するメタデータが含まれており、関数テンプレートが説明する関数モジュールの一意の名前が付けられています。
IDoc タイプの説明
このメタデータは、IDoc ランタイムによって使用され、IDoc ドキュメントが通信パートナーに送信される前に正しくフォーマットされていることを確認します。基本的な IDoc タイプは、名前、許可されたセグメントのリスト、およびセグメント間の階層関係の説明で設定されます。いくつかの追加の制約をセグメントに課すことができます。セグメントは必須またはオプションにすることができます。また、各セグメントの最小/最大範囲を指定することができます (そのセグメントの許容反復回数を定義します)。

したがって、SAP 宛先およびサーバーエンドポイントは、RFC 呼び出しを送受信し、IDoc ドキュメントを送受信するために、リポジトリーへのアクセスを必要とします。RFC 呼び出しの場合、エンドポイントによって呼び出されて処理されるすべての機能モジュールのメタデータは、リポジトリー内に存在する必要があります。IDoc エンドポイントの場合、エンドポイントによって処理されるすべての IDoc タイプおよび IDoc タイプ拡張のメタデータは、リポジトリー内に存在する必要があります。宛先およびサーバーエンドポイントによって使用されるリポジトリーの場所は、それぞれの接続の宛先データおよびサーバーデータで指定されます。

SAP 宛先エンドポイントの場合、使用するリポジトリーは通常、SAP システムに存在し、接続先の SAP システムにデフォルト設定されます。このデフォルトでは、宛先データに明示的な設定は必要ありません。さらに、宛先エンドポイントが行うリモート関数呼び出しのメタデータは、それが呼び出す既存の関数モジュールのリポジトリーにすでに存在します。したがって、宛先エンドポイントによって行われる呼び出しのメタデータは、SAP コンポーネントで設定する必要はありません。

一方、サーバーエンドポイントによって処理される関数呼び出しのメタデータは、通常、SAP システムのリポジトリーには存在せず、代わりに SAP コンポーネントに存在するリポジトリーによって提供される必要があります。SAP コンポーネントは、名前付きメタデータリポジトリーのマップを維持します。リポジトリーの名前は、メタデータを提供するサーバーの名前に対応しています。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.