共有モジュールの ArcPy 関数と、公開、キャッシュ、タイル キャッシュ、およびパッケージ ツールセット内のジオプロセシング ツールを組み合わせて使用すると、Python で Web レイヤーの共有、上書き、および置換を自動化することができます。
Web レイヤーの共有を自動化するには 2 つの方法 (サービス定義から Web レイヤーを公開、パッケージから Web レイヤーを公開) があります。 使用する方法は、公開する Web レイヤーのタイプによって異なります。 サービス定義から公開する場合、Web レイヤーはサービス定義から公開されます。 パッケージから公開する場合、キャッシュはパッケージとしてローカルに作成され、その後アップロードされて、Web レイヤーの公開に使用されます。
Web レイヤー タイプ | サービス定義 | パッケージ |
---|---|---|
注意:
一部の Web レイヤー構成は、Python で公開することができません。 次の Web レイヤーは、アプリケーションのユーザー インターフェイスを使用して公開する必要があります。
- 関連するマップ イメージ レイヤーおよび Web フィーチャ レイヤーを含むベクター タイル レイヤー
- 関連するマップ イメージ レイヤーおよび Web フィーチャ レイヤーを含む Web シーン レイヤー
サービス定義から Web レイヤーを公開
Web レイヤーを公開するワークフローは、共有するプロジェクト内のマップまたはラスター データセットから開始します。
- 最初に、Map クラスの getWebLayerSharingDraft メソッドを使用してサービス定義ドラフトを作成します。 詳細については、FeatureSharingDraft、MapImageSharingDraft、または TileSharingDraft をご参照ください。 スタンドアロン テーブルのサービス定義ドラフトを作成するには、ListTables 関数と FeatureSharingDraft クラスを使用します。 Web イメージ レイヤーのサービス定義ドラフトを作成するには,CreateImageSDDraft 関数を使用します。
Web フィーチャ レイヤー、マップ イメージ レイヤー、またはスタンドアロン テーブルを上書きするには、共有ドラフトの overwriteExistingService プロパティを変更します。
注意:
このプロパティは、TileSharingDraft および CreateImageSDDraft ジオデータベースには使用できません。 Web タイル レイヤーの場合、代わりに [Web レイヤーの置換] ジオプロセシング ツールを使用します。
- 次に、[サービスのステージング (Stage Service)] ジオプロセシング ツールを使用して、サービス定義をステージングします。 ステージングでは、サービス定義のドラフトを使用して、Web レイヤーの共有に必要なすべての情報を含むサービス定義ファイルを作成します。
- 最後に、[サービス定義のアップロード (Upload Service Definition)] ジオプロセシング ツールを使用して、サービス定義をアップロードし、Web レイヤーを公開します。
注意:
コンテンツを作成して公開する権限のある ArcGIS Online または ArcGIS Enterprise アカウントで AllSource にサイン インする必要があります。
パッケージから Web レイヤーを公開
Web タイル レイヤーとベクター タイル レイヤーの場合、ワークフローは共有するプロジェクト内のマップから開始します。 Web シーン レイヤーと Web 標高レイヤーの場合、サポートされている入力データセットから開始します。
- 最初に、対応するジオプロセシング ツールを使用して、共有するタイプの Web レイヤーのパッケージを作成します。
Web レイヤー タイプ ジオプロセシング ツール マップ タイル パッケージの作成 ベクター タイル パッケージの作成 シーン レイヤー パッケージを作成するツールは複数あります。 詳細については、「シーン レイヤー パッケージの作成および共有」をご参照ください。
コンテンツの作成に使用したジオプロセシング ツール別の Web レイヤー ヒント:
Web タイル レイヤーまたは Web 標高レイヤーのタイル パッケージを作成する前に、必要に応じて [マップ サービス キャッシュ タイル スキーマの生成] または [タイル キャッシュのタイル スキーマの生成] ツールを使用し、マップまたは標高データセットの投影法でタイル スキーマを生成します。 ArcGIS Online/Bing Maps/Google Maps タイル スキーマを使用する場合は、このステップをスキップできます。 詳細については「タイル パッケージの共有」をご参照ください。
- 次に、[パッケージの共有] ツールを使用し、パッケージを Web レイヤーとして ArcGIS Online または ArcGIS Enterprise にアップロードおよび公開します。
- 最後に、必要に応じて [Web レイヤーの置換] ツールを使用し、ポータル内の既存の Web レイヤーのコンテンツを新しい Web レイヤーのコンテンツに置き換えます。
注意:
Web 標高レイヤーを置き換えることはできません。