270.5. 例
この例では、SAP のフライトデモ例を使用して い ます。これは、インターネット上でオンラインで利用できます。
以下のルートで、以下の URL を使用して SAP NetWeaver デモサーバーを要求します。
https://sapes1.sapdevcenter.com/sap/opu/odata/IWBEP/RMTSAMPLEFLIGHT_2/
そして、以下のコマンドを実行します。
FlightCollection(AirLineID='AA',FlightConnectionID='0017',FlightDate=datetime'2012-08-29T00%3A00%3A00')
指定のフライトのフライト詳細を取得します。コマンド構文は MS ADO.Net Data Service 形式です。
以下の Camel ルートがあります。
from("direct:start") .setHeader(NetWeaverConstants.COMMAND, constant(command)) .toF("sap-netweaver:%s?username=%s&password=%s", url, username, password) .to("log:response") .to("velocity:flight-info.vm")
url、ユーザー名、パスワード、およびコマンドは以下のように定義されます。
private String username = "P1909969254"; private String password = "TODO"; private String url = "https://sapes1.sapdevcenter.com/sap/opu/odata/IWBEP/RMTSAMPLEFLIGHT_2/"; private String command = "FlightCollection(AirLineID='AA',FlightConnectionID='0017',FlightDate=datetime'2012-08-29T00%3A00%3A00')";
パスワードは無効です。最初に SAP でアカウントを作成し、デモを実行する必要があります。
velocity テンプレートは、基本的な HTML ページへの応答のフォーマットに使用されます。
<html> <body> Flight information: <p/> <br/>Airline ID: $body["AirLineID"] <br/>Aircraft Type: $body["AirCraftType"] <br/>Departure city: $body["FlightDetails"]["DepartureCity"] <br/>Departure airport: $body["FlightDetails"]["DepartureAirPort"] <br/>Destination city: $body["FlightDetails"]["DestinationCity"] <br/>Destination airport: $body["FlightDetails"]["DestinationAirPort"] </body> </html>
アプリケーションを実行すると、サンプリングの出力が表示されます。
Flight information: Airline ID: AA Aircraft Type: 747-400 Departure city: new york Departure airport: JFK Destination city: SAN FRANCISCO Destination airport: SFO