チュートリアル: 印刷用サービスの公開
ArcGIS for Server に付属する PrintingTools サービス以外に、Web 印刷用サービスをさらに公開する必要がある場合があります。たとえば、新しいサービスを作成して、マップ レイアウトのユーザ独自のフォルダをポイントするよう構成できます。また、無償のサービスを公開する一方で、より高度なサービスを有償で提供することもできます。
ユーザ独自の印刷用サービスを作成するには、[Web マップのエクスポート(Export Web Map)] ツールによりジオプロセシング サービスを公開する必要があります。このチュートリアルでは、そのプロセスについて説明します。
ArcGIS for Server へのレイアウト テンプレート フォルダの登録
このチュートリアルでは、Web マップの印刷用にさまざまなレイアウトで準備された ArcMap ドキュメント(MXD)のフォルダを使用して作業します。これがユーザのレイアウト テンプレート フォルダになります。
ユーザのレイアウト テンプレート フォルダが、現在、サーバ上にあるか、サーバからアクセス可能な場合は、そのフォルダを ArcGIS for Server に登録する必要があります。サーバへのフォルダの登録方法の詳細については、「ArcGIS for Desktop を使用したデータの ArcGIS Server への登録」をご参照ください。
レイアウト テンプレート フォルダをサーバ上、またはサーバからアクセス可能な場所に移動することができない場合は、何もする必要はありません。レイアウト テンプレート フォルダは、サービスの公開時にサーバにコピーされるので、サーバが確実にそのフォルダを認識できるようになっています。このオプションを使用する方が、構成は簡単ですが、将来、レイアウト テンプレートを更新する際に追加の手順を必要とします。
サービスの準備と公開
公開における最初のステップは、サービスに求められるデフォルト値を使って [Web マップのエクスポート(Export Web Map)] ツールを実行することです。次に、そのツール結果をジオプロセシング サービスとして公開します。
- ArcCatalog、または ArcMap のカタログ ウィンドウで、[Toolboxes] → [System Toolboxes] → [Server Tools] → [印刷] の順に選択します。
- [Web マップのエクスポート(Export Web Map)] ツールをダブルクリックして開きます。
- [JSON としての Web マップ] パラメータは空白のままにします。
印刷可能な画像を取得するために、このサービスのユーザは、このパラメータでユーザ独自の Web マップの JSON を送信します。ArcGIS Web API の印刷ウィジェットによって、その JSON の生成処理が内部で実行されます。
- [出力ファイル] パラメータについてはデフォルト値のままにします。このツールをサーバに公開すると、出力がサーバ ジョブ ディレクトリに格納されます。
- [参照] ボタンをクリックし、レイアウトが保存されているフォルダを参照して選択することで、[レイアウト テンプレート フォルダ] パラメータを指定します。
ArcGIS for Server にインストールされている基本レイアウトだけを参照する場合は、<ArcGIS for Server インストール ディレクトリ>/Templates/ExportWebMapTemplates を参照します。このパラメータを空白のままにしておくことはできません。
- 必要に応じて、ドロップダウン リストからレイアウトの 1 つを選択して [レイアウト テンプレート] パラメータを設定します。これが、ユーザによるサービス実行時のデフォルトのレイアウトになります。
- [OK] をクリックしてツールを実行します。
- [ジオプロセシング] → [結果] の順にクリックして [結果] ウィンドウを表示します。
- [現在のセッション] を展開し、受け取った [ExportWebMap] 結果を右クリックし、[共有] → [ジオプロセシング サービス] の順にクリックします。
- [サービスを公開] を選択し、[次へ] をクリックします。
- ArcGIS Server への接続を選択(または、ボタンをクリックして新規の接続を追加)し、サービスに名前を指定します。[次へ] をクリックします。
- このサービスが存在するフォルダを選択します。既存のシステム フォルダまたは [Utilities] フォルダには公開できません。ユーザ独自のフォルダまたはルート フォルダを使用してください。
フォルダを選択したら [続行] をクリックします。
ここで [サービス エディタ] が表示されます。このウィンドウでは、サービスに使用可能なパラメータの選択肢の設定など、公開前の追加の準備作業を行うことができます。
- [パラメータ] をクリックして、サービスの [実行モード] が [同期] に設定されていることを確認します。リクエストの処理に数秒以上かかると予測される場合は、代わりに [非同期] を選択することもできます。
- [サービス エディタ] で、各ツール パラメータの一覧が表示されている([JSON としての Web マップ]、[出力ファイル]、[フォーマット]、[レイアウト テンプレート フォルダ]、および [レイアウト テンプレート])左のパネルを確認します。これらのパラメータのそれぞれをクリックして、設定されているデフォルト値を調べます。デフォルト値を変更する場合は、[Web マップのエクスポート(Export Web Map)] ツール ダイアログ ボックスに戻って、このチュートリアルの前のステップで実行したとおりに値を設定する必要があります。
10.1 の [Web マップのエクスポート(Export Web Map)] ツールに関する既知の制限により、エンド ユーザに提供されるパラメータの選択肢をフィルタリングすることはできません。
パラメータの [入力モード] を [定数値] に設定すると、パラメータを完全にエンドユーザに非表示にし、エンド ユーザにデフォルト値を使用させることができます。
- [サービス エディタ] を使用して、コンピュータごとに実行を許可する最小/最大インスタンス数など、サービスに求められるその他のプロパティを設定します。
- [公開] をクリックしてサービスを公開します。
データがサーバにコピーされることに関して警告を受信した場合は、[OK] をクリックします。この処理では、わずかなデータ量のデフォルトの出力画像がコピーされるにすぎません。
- 自分のサービスが正常に公開されていることを、Manager または Services Directory で参照して確認します。
これで、ユーザの新規サービスが、ArcGIS Web API で提供される印刷ウィジェットで参照できるようになりました。
レイアウト テンプレートの更新
レイアウト テンプレート フォルダ内のレイアウトを更新する場合、該当するワークフローは、公開前にレイアウト テンプレート フォルダをサーバに登録しているかどうかで決まります(前のセクションの「ArcGIS Server へのレイアウト テンプレートの登録」を参照)。
ArcGIS Server に登録している場合のレイアウト テンプレートフォルダの更新
レイアウト テンプレート フォルダをサーバに登録している場合、これは、サーバがユーザのレイアウトを認識できることを意味します。フォルダ内の MXD に対して更新を行うだけで、新しいレイアウトがすぐに利用可能になります。
ArcGIS Server に登録していない場合のレイアウト テンプレートフォルダの更新
レイアウト テンプレート フォルダをサーバに登録していない場合は、公開時にレイアウトがサーバにコピーされています。サーバ上のテンプレートを更新するには、サービスの上書きを実行する必要があります。上書きを実行するには、次の手順に従います。
- ArcMap で、[Web マップのエクスポート(Export Web Map)] ツールを開き、前述のように、必要なデフォルト値を使ってツールを実行します。
- ジオプロセシング結果を右クリックし、[共有] → [ジオプロセシング サービス] の順に選択します。
- [既存サービスを上書き] オプションをオンにし、[次へ] をクリックします。
- 上書きするサービスの名前をクリックして [継続] をクリックします。
- [サービス エディタ] で、すべてのサービス プロパティが目的の値に設定されていることを確認します(すべてのサービス プロパティは、デフォルトで、ユーザが最初にサービスを公開したときに選択したプロパティに設定されます)。次に [公開] をクリックします。
選択したオプションによって、初回公開時に設定されたすべてのオプションが上書きされます。レイアウト テンプレート フォルダ(更新を含む)がサーバにコピーされ、サービスを最初に公開したときにその場所に配置されたレイアウト テンプレート フォルダを上書きします。