OutSystemsのSOAP機能(2)SOAP API利用

OutSystemsには、SOAP APIを公開する機能だけでなく、どこかで公開されているAPIを利用する機能もあります。

この機能で取り込んだAPIはService Studio上のアイコンとして取り込まれ、Flow上で他のActionと同じように使えるようになります。

SOAPは最近あまり見ないのと、大体企業システムのAPIで気軽に使えるのが見つからなかったので、OutSystemsのSOAP機能(1)SOAP API作成 で作成したSOAP APIを使って動作確認していきます。

SOAP APIを利用する

SOAP APIを参照して利用するためには、まず、LogicタブのIntegrations>SOAPを右クリックして、Expose SOAP Web Serviceを選択します。

SOAP APIの仕様を表すWSDLのURLを表示されたダイアログの入力欄に設定してOKボタンをクリック(CHOOSE A FILEボタンから、ローカルに保存したwsdl選択することもできるようです)。

OutSystemsで公開したSOAP APIはSOAP 1.1/1.2の両方で公開されるようです(OutSystems 10は.NET Stackのみ)。

そのため、参照URLを入力した時点で以下のダイアログが表示されます。

今回は動作確認だけなので、とりあえず上の方を選択してみました。

メソッド選択ダイアログでは全部選択してFINISHボタンをクリック。

(1)で定義したWebMethod1がきちんと取り込まれました。

Input/Outputのパラメータも正しく取り込めてます。

なお、WebMethod2は簡単にAPI利用のテストができるように、対象Entityを全件返すAPIとして定義しました。

動作確認

画面を用意して、Screen Actionから、とりこんだSOAP APIを利用することで動作確認します。

1レコード作成するSOAP APIに渡す値をそれぞれInputで受取り、登録ボタンクリックでSOAP APIを呼び出し、結果をボタンの下部に表示しています。

ボタンのScreen Actionはこんな感じです。他のActionと同様にFlowの中のアイコンとしてSOAP APIが呼び出せているのが確認できると思います。WebMethod1のパラメータはSOAP API参照時に作成されたStructureを渡しています。Structureの3つの属性が画面上の3つのInputに紐付いてます。

ログ

SOAP APIのログはService CenterのMonitoring>Integrationsに出力されます。

通常は、いつ、どのAPIを呼び出して何秒くらいかかったか位しか出力されません。

ここで詳細なログを出力させるためには、同じくService CenterでeSpaceを開き、Integrationsタブで、出力するログを詳細化したいAPIを選択します。

この画面でLogging Levelを変更します。

Fullは常時、SOAP API通信のHTTPリクエスト/レスポンスを記録。Troubleshootはエラー発生時のみ記録です。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする