このサイトをビューするために JavaScript を有効化してください。

Altova FlowForce Server 2020

ジョブの構成

Web サービスとしてジョブを公開する

スクロール ホーム トップ その他

FlowForce Server ジョブを Web サービスとして公開することができます。Web サービスとして公開されるジョブは、プログラミング的にアクセスできることを基本的に意味します。テストとデバッグのために、このようなジョブをブラウザーから呼び出すこともできます。

Web サービスとしてジョブを公開する:

1.ジョブを作成する、または、既存のジョブを編集のために開きます。

2.「 HTTP を介してこのジョブを利用可能にする」チェックボックスをクリックします。

ff-service

3.URL テキストボックス内に Web サービスの名前を入力します。

 

指定されたリクエスト URL で、 FlowForce Server は HTTP GET と POST リクエストを受け入れるリスナーサービスを開始します。サービスとして公開されるジョブは、 FlowForce サーバーが作動している間はアクティブです。

 

HTTP を介してこのジョブを使用可能にする チェックボックスの横にあるfs_ic_call_ws ボタンをクリックすると、FlowForce Server の任意の ホスト名 フィールドを セットアップページ からセットアップするとサービスの呼び出しを新規のウィンドウ内で実行することができます。それ以外の場合、このボタンは表示されません。

 

サービスが呼び出されると、FlowForce Server は指定されたジョブの実行ステップを実行し、次を返します:

 

ジョブが結果ファイルを生成する場合、最後のステップの最初の結果ファイル。

結果ファイルが生成されない場合、最後のステップの標準出力 (コマンドライン出力と作業する場合などが当てはまります)。

 

結果に従ったコンテンツ型 ヘッダーが表示され、 HTTP 200 ステータスと共に有効な結果が返されます。コンテンツ型 ヘッダーは実際の結果により異なります。MapForce マッピングは、XML 出力が存在する場合、または、テキスト出力のための text/plain が存在する場合、 text/xml で結果が表示されます。他の関数の標準の出力も text/plain で返されます。結果は修飾記号なしでレスポンスボディとして返されます。

 

実行エラーはジェネリック名エラーメッセージと共に HTTP 5xx ステータスとして報告されます。詳細に関しては、 FlowForce Server ログ をチェックしてください(ジョブログの確認 を参照)。

 

このようなジョブの構成を説明するステップバイステップのサンプルに関してはWeb サービスとしてジョブを公開するを参照してください。

 

全てのジョブステップが実行される前に FlowForce が結果を返すように構成することは可能です。サービスとして呼び出されたジョブが時間を要す場合場合この機能は特に役に立ちます。早い結果は処理のために FlowForce Server により受け入れられた呼出元により確認として扱われます。詳細に関しては延期されたステップを参照してください。

現在作動しているすべての FlowForce Server Web サービスを確認する:

ブラウザーを開き、次の URL をアドレスバーに入力します。

 

http://[FlowForceServer][ServerPort]/service/*

 

[FlowForceServer][ServerPort] は FlowForce Server が実行されているネットワークアドレスとポートを示します。デフォルトでは、(同じマシンからアクセスすると想定し) FlowForce Server は http://localhost:4646 で作動します。サーバー名とポートは管理ページで定義されているとおりです ネットワーク設定の定義を参照してください。

 

Web  サービスパラメーター

Web サービスとしてジョブを公開すると、全てのジョブのパラメーターは自動的にサービスのパラメーターになります。ジョブのパラメーターにデフォルトが存在しない場合、サービスを呼び出す際にデフォルトを与える必要があります。リクエスト内で与えられていない場合、任意のパラメーターはデフォルトの値を取ります。

 

サービスが呼び出されると、 FlowForce Server は、リクエスト内で与えられたパラメーターをジョブ内で定義されたパラメーターに対して検証します。パラメーターの検証に失敗すると、FlowForce Server は、5xx HTTP ステータスを返します。この場合デバッグとテストのために、 FlowForce Server は HTML パラメーターフォームも表示します。デバッグとテストのために HTML フォームを使用して、パラメーターを手動で入力することができます。型 ストリームのパラメーターのために、ページ内でブラウザーボタンが使用できるようになり、パラメーターが必要とするようにファイルをアップロードするために使用することができます。

 

テスト HTML フォームを条件無しに表示するには、リクエスト内にビルドインの (値を持つ)パラメーター showform を与えます。

 

Internet Explorer を使用して、Web サービスとして FlowForce Server ジョブをテストする場合、 詳細設定 タブ内の「HTTP エラーメッセージを簡易表示する」 オプションを無効化する必要がある場合があります。

 

パラメーターを持つ FlowForce Web サービスを呼び出すには、次のオプションの一つを使用することができます:

 

1.文字列、または、数値などの簡単型のパラメータには、GET または POST リクエストの URL 内に提供することができます。例えば、 Web サービスとしてジョブを公開するを参照してください。

2.POST  の場合は、更に multipart/form-data または application/x-www-form-urlencoded としてパラメータを提供することができます。FlowForce 内の型 「stream」 がパラメーターの場合、 (FlowForce が期待するため) multipart/form-data としてクライアントが提供する必要があります。このようなパラメータのために、ブラウザーは、対応するパラメーターの横に 「参照」 ボタンを表示する HTML フォームをテストします。

3.クライアントは POST リクエストのボディ内の任意のコンテンツを含むことができます (パラメーターとしてではなく、 HTTP リクエストのボディとしてポストされている JSON または XML などのコンテンツを具体的に示しています)。これを可能にするには、FlowForce ジョブは型 streamsingle パラメータを含んでいる必要があります。追加の非 stream パラメータを必要とする場合、これらは POST URL 内に提供される必要があります。しかしながら、FlowForce 内で一つの型 stream のパラメータが定義される必要があります。これらの条件が満たされると、 stream パラメーターのためにデータとしてリクエストボディが扱われます。他の構成は必要ありません。例えば、 JSON を FlowForce Web サービスへポストする方法を参照してください。

 

Web サービスの認証

デフォルトでは、 FlowForce Server は HTTP ベーシック認証を使用して、Web サービスを呼び出すクライアントを認証します。ユーザーの資格方法は FlowForce Server ユーザーデータベースに対してチェックされます ( FlowForce Server Web 管理インターフェイスにログオンするために使用されるユーザー名とパスワード).

ff_login_04

資格情報無しでサービスが使用できるようにするには、デフォルトの useranonymous ユーザーにサービスの使用パーミッションを与えます (パーミッションのしくみを参照してください )。

 

サービスが匿名の使用を許可する場合 HTTP 資格情報を提供することができます。資格情報は FlowForce Server のユーザーデータベースに対してチェックされ、サービス実行ファイルは、匿名ユーザーの代わりに認証済みのユーザーの属性にされます。

 

無効な資格情報を提供すると、 401 の HTTP 状態をインターフェイスは返します。サービスの使用はこのサービスの匿名のユーザーに与えられません。リクエストインターフェイスは、 401 の HTTP 状態を返します。

 

有効な資格情報が与えられ、このサービス上でサービスの使用 パーミッションが認証されていないユーザーに与えられていない場合、リクエストインターフェイスは HTTP 4xx 失敗状態を返します。存在しないサービスにアクセスしようとすると、 HTTP 4xx 失敗状態が返されます。

 

HTTP ベーシック認証に加え、任意で、 Windows ドメインの認証を構成することもできます。構成方法に関しては、ディレクトリサービスの変更設定の変更 を参照してください。Windows ドメイン認証が構成されると、有効なユーザー名とパスワードを提供することにより、ユーザーは FlowForce Server により公開される Web サービスにアクセスできるようになります。重要な点は、ユーザー名がプレフィックス NT/ を含む必要があり、ドメイン名を除外する必要があることです。例: NT/john.doe@my.domain.com.

ff_login_03

 

キューの設定

サービス URL はトリガーの特別な型で、このために接続が構築されると同じキューの制約の対象となります。 キューの設定の定義を参照してください。

 

FlowForce Server プールスレッドの再構成の方法

大量の並列 HTTP サービスリクエスト (例えば、1度に 20 または以上)を期待する場合、flowforce.iniファイルをプールスレッドの若干大きい数量に再構成することが可能です。

 

1.設定 thread_pool を .ini ファイルの [Listen] セクションに追加し 20 以上の値に設定します。(必要な場合は、[ListenSSL] セクション内にオプションを追加します。)

2.サービスを再起動します。

 

メモ:(多くのプールスレッドを必要としない) FlowForce Web Server のためと (異なるポート上の) 他のリスエストのために個別の [Listen] セクションを2つ持つことはよい案です。それ以外の場合、 FlowForce Web Server はプールスレッドのための他の HTTP リクエストと競合します。

(C) 2020 Altova GmbH