TotalAgility でサポートされる Web サービス

TotalAgility Designer では、次の 3 タイプの Web サービス レファレンスがサポートされています。

SOAP Web サービス

SOAP (簡易オブジェクト アクセス プロトコル) は、インターネット上でリモート プロシージャ コールを行うための標準的な XML 形式です。

WCF Web サービス

WCF (Windows Communication Foundation) は、サービス指向アプリケーションを構築するためのフレームワークです。WCF を使用すると、あるサービス エンドポイントから別のエンドポイントに対し、データを非同期メッセージとして送信できます。

TotalAgility では、柔軟な WCF Web サービス (拡張子が .svc のもの) をサポートしています。WCF サービスのコンポーネントは、HTTP や TCP などすべてのプロトコルで呼び出すことができます。従来の Web サービスを呼び出すことができるのは、HTTP プロトコルのみです。これにより柔軟性が高まるため、現在のビジネス トレンドに合ったプロセスを設定することができます。

RESTful Web サービス

RESTful Web サービス (別名 RESTful Web API) は、REST 原則に従い HTTP を使用して実装されたシンプルな Web サービスです。このサービスは、次の内容を含むリソースをまとめたものです。

  • Web サービスのベース URI (http://example.com/resources/ など)

  • Web サービスでサポートされるデータのインターネット メディア タイプ。JSON、XML、YAML のいずれかであることがほとんどですが、その他のあらゆるインターネット メディア タイプも指定できます。TotalAgility では、XML と JSON のみがサポートされます。

  • Web サービスでサポートされる、HTTP メソッド (GET、PUT、POST、DELETE など) による操作。

WCF を構成して JSON エンドポイントを用意するには、JSON エンドポイントを「webHttpBinding」にバインドする必要があります。たとえば、次のように web.config ファイルの設定を構成します。
<service name="Agility.Sdk.Services.JobService" 
behaviorConfiguration="Agility.Server.Web.Services.Behavior">
<endpoint address="json" bindingConfiguration="WebHttpBinding_Service" 
behaviorConfiguration="jsonBehavior" binding="webHttpBinding" 
contract="Agility.Sdk.Model.Interfaces.Services.IJobService"/>
</service>

HTTP ベースの要求に対応したエンドポイント動作を作成するには、次の動作を作成し、参照用の名前を付けます。


    <behaviors>
      <endpointBehaviors>
        <behavior name="jsonBehavior">
          <enableWebScript/>
          <jsonErrorHandler/>
        </behavior>
      </endpointBehaviors>
    </behaviors>

サービスには、SVC URI (例: http://localhost/service1.svc/json/{method}) からアクセスできます。

API はハイパーテキスト駆動型である必要があります。

TotalAgility Designer でサポートされるのは、シンプルな RESTful Web サービスのみです。複雑なデータ構造を持つ RESTful Web サービスは使用しないでください。