289.11. 例 2: SAP へのデータの書き込み
概要
この例は、SAP で FlightTrip
ビジネスオブジェクトインスタンスを作成するルートを示しています。ルートは、FlightTrip
BAPI メソッド BAPI_FLTRIP_CREATE
を呼び出し、宛先エンドポイントを使用してオブジェクトを作成します。
ルートの Java DSL
サンプルルートの Java DSL は次のとおりです。
from("direct:createFlightTrip") .to("bean:createFlightTripRequest") .to("sap-srfc-destination:nplDest:BAPI_FLTRIP_CREATE?transacted=true") .to("bean:returnFlightTripResponse");
ルートの XML DSL
また、同じルートの Spring DSL は次のとおりです。
<route> <from uri="direct:createFlightTrip"/> <to uri="bean:createFlightTripRequest"/> <to uri="sap-srfc-destination:nplDest:BAPI_FLTRIP_CREATE?transacted=true"/> <to uri="bean:returnFlightTripResponse"/> </route>
トランザクションサポート
SAP エンドポイントの URL では、transacted
オプションが true
に設定されていることに注意してください。「トランザクションサポート」 で説明したように、このオプションが有効になっている場合、エンドポイントは、RFC 呼び出しを呼び出す前に SAP トランザクションセッションが開始されていることを確認します。このエンドポイントの RFC は SAP で新しいデータを作成するため、ルートの変更を SAP で永続的にするには、このオプションが必要です。
リクエストパラメーターの設定
createFlightTripRequest
および returnFlightTripResponse
Bean は、前の例で示したのと同じ一連の操作に従って、リクエストパラメーターを SAP リクエストに入力し、SAP レスポンスからレスポンスパラメーターをそれぞれ展開します。