Skip to main content

 

SOAP

 

 

OutSystems

例: 実行時にサービスのエンドポイントを変更する

このシナリオ例では、実行時にSOAP Webサービスのエンドポイントを変更するためのサポートを追加します。

以下の手順を実行します。

1.Integration Studioでエクステンションを作成し、エンドポイントの変更を処理するアクションを定義します。
以下の例では、Text型の「Uri」入力パラメータを持つ「ChangeEndpoint」というアクションをIntegration Studioで定義しています。

2.[Edit Source Code .NET]をクリックします。プロジェクトのターゲットフレームワークを設定し、System.ServiceModelアセンブリへの参照を追加します。
以下のコードを入力し、Integration Studioで作成されたMssChangeEndpoint関数プレースホルダを置き換えます。

// required 'using' statements at the beginning of the file
using System.ServiceModel;
using OutSystems.SOAP.API;

/* ...*/

// replace the 'MssChangeEndpoint' function placeholder with the following code
public void MssChangeEndpoint(string ssUri) {
    var client = SoapRequest.GetCurrentClient();
    client.Endpoint.Address = new EndpointAddress(ssUri);
}

3.Visual Studio .NETを停止し、Integration Studioに戻ります。Integration Studioで、[1-Click Publish]ツールバーアイコンをクリックするか、またはF5キーを押して、エクステンションをパブリッシュします。

4.Service Studioで、アプリケーションモジュールにエクステンションの「ChangeEndpoint」アクションへの参照を追加します。

5.SOAP WebサービスのSOAPコールバックフロー(OnBeforeRequestAdvancedフロー)で、ChangeEndpointアクションをフローにドラッグし、目的のWebサービスのエンドポイント値をUri入力パラメータに入力します。

6.アプリケーションモジュールをパブリッシュしてアプリケーションをテストし、エンドポイントが実行時に正しく設定されることを確認します。

  • Was this article helpful?