Skip to main content

ルート検索サービスのプロパティ ファイル

プロパティ ファイルからルート検索サービスの高度なプロパティを指定します。

追加サービスのプロパティ

ネットワーク データセットからルート検索サービスを構成する場合は、サービス インスタンスの最小数と最大数、サービスの REST API でサポートされている 1 つ以上のパラメーターのデフォルト値など、ルート検索サービスの追加設定を含むプロパティ ファイルを指定できます。 たとえば、ルート検索サービスとルート案内サービスを利用するアプリケーションで出力ルートからの移動時間および移動距離の値だけが使用され、ルート案内もルート ジオメトリーも必要でない場合は、デフォルトで目的の出力だけが返されるように、プロパティ ファイルを使用してルート検索サービスとルート案内サービスを構成することができます。 これにより、クライアント アプリケーションで使用されていない余分な出力が生成されなくなるため、ルート検索サービスとルート案内サービスのパフォーマンスが最適化されます。

プロパティ ファイルには、これらの設定が JavaScript Object Notation (JSON) 形式で格納されています。 このヘルプ トピックでは、JSON 形式に関する基礎知識があることを想定しています。

プロパティ ファイルを指定することで、ルート検索サービスの高度なプロパティを構成できます。 デフォルトのプロパティ ファイルは publishroutingservices.json という名前です。

このファイルは、ArcGIS Server インストール ディレクトリー内の <install folder>/framework/runtime/ArcGIS/Resources/ArcToolBox/Services/routingservices にあります。

このセクションでは、デフォルト ファイルを例にしてプロパティ ファイルの構造を説明します。 プロパティを変更するには、デフォルト ファイルのコピーを作成し、テキスト エディターを使用してそのコピーを編集します。 ルート検索の構成プロセスを呼び出す場合は、変更を加えたファイルを入力値として指定します。

プロパティ ファイルの構造

このプロパティ ファイルには、routingServices という最上位のオブジェクトがあり、mapServices オブジェクトと gpServices オブジェクトが含まれています。 これらのオブジェクトにはそれぞれ、特定のルート検索サービスを表す 1 つ以上のオブジェクトを含めることができます。

プロパティ ファイル内の最上位の JSON オブジェクト mapServices オブジェクトでは networkAnalysis マップ サービスのプロパティを定義し、gpServices オブジェクトでは asyncNetworkAnalysissyncNetworkAnalysis、および routingUtilities ジオプロセシング サービスのプロパティを定義します。

{
 "routingServices": {
     "mapServices": {
         "networkAnalysis": {
         }
     },
     "gpServices": {
         "asyncNetworkAnalysis": {
         },
         "syncNetworkAnalysis": {
         },
         "routingUtilities": {
         }
     }
 }
}

networkAnalysis などのマップ サービス オブジェクトには、マップ サービスのサービス レベル プロパティを定義する serviceProperties オブジェクトと、マップ サービスで使用される 1 つ以上のレイヤーのプロパティを定義する layerProperties オブジェクトが含まれています。

asyncNetworkAnalysis などのジオプロセシング サービス オブジェクトには、ジオプロセシング サービスのサービス レベル プロパティを定義する serviceProperties オブジェクトと、ジオプロセシング サービスで使用される 1 つ以上のジオプロセシング ツールのプロパティを定義する toolProperties オブジェクトが含まれています。

servicePropertieslayerProperties または toolProperties を含むサービス JSON オブジェクト。

{
 "routingServices": {
     "mapServices": {
         "networkAnalysis": {
             "serviceProperties": {
             },
             "layerProperties": {
             }
         }
     },
     "gpServices": {
         "asyncNetworkAnalysis": {
             "serviceProperties": {
             },
             "toolProperties": {
             }
         },
         "syncNetworkAnalysis": {
             "serviceProperties": {
             },
             "toolProperties": {
             }
         },
         "routingUtilities": {
             "serviceProperties": {
             },
             "toolProperties": {
             }
         }
     }
 }
}

サービス オブジェクトに含まれる serviceProperties オブジェクトでは、コンピューター当たりのサービス インスタンスの最大数 (MaxInstances) や、クライアントがサービスを利用できる秒単位の最大時間 (UsageTimeout) など、1 つ以上のサービス レベル プロパティを定義します。

マップ サービスの layerProperties オブジェクトでは、routeclosestFacilityserviceArea、および odCostMatrix レイヤーのプロパティを定義します。 レイヤーのプロパティは、defaultValues オブジェクトの一部として定義されます。

ジオプロセシング サービスの toolProperties オブジェクトでは、FindRoutesFindClosestFacilitiesGenerateServiceAreasGenerateOriginDestinationCostMatrixSolveLocationAllocationSolveVehicleRoutingProblemEditVehicleRoutingProblemSolveLastMileDeliverySnapToRoads など、ジオプロセシング ツールのプロパティを定義します。 ツールのプロパティは、defaultValues オブジェクトの一部として定義されます。 constantParameters オブジェクトでは、ツールのパラメーターのうち、ジオプロセシング サービスの REST API で使用できない 1 つ以上のパラメーターを表示できます。

マップ サービス内のレイヤーの layerProperties オブジェクトとジオプロセシング サービス内のツールの toolProperties オブジェクト

{
 "routingServices": {
     "mapServices": {
         "networkAnalysis": {
             "serviceProperties": {
             },
             "layerProperties": {
                 "route": {
                     "defaultValues": {
                     }
                 },
                 "closestFacility": {
                     "defaultValues": {
                     }
                 },
                 "serviceArea": {
                     "defaultValues": {
                     }
                 },
                 "odCostMatrix": {
                     "defaultValues": {
                     }
                 }
             }
         }
     },
     "gpServices": {
         "asyncNetworkAnalysis": {
             "serviceProperties": {
             },
             "toolProperties": {
                 "FindRoutes": {
                     "defaultValues": {
                     },
                     "constantParameters": []
                 },
                 "FindClosestFacilities": {
                     "defaultValues": {
                     },
                     "constantParameters": []
                 },
                 "GenerateServiceAreas": {
                     "defaultValues": {
                     },
                     "constantParameters": []
                 },
                 "GenerateOriginDestinationCostMatrix": {
                     "defaultValues": {
                     },
                     "constantParameters": []
                 },
                 "SolveLocationAllocation": {
                     "defaultValues": {
                     },
                     "constantParameters": []
                 },
                 "SolveVehicleRoutingProblem": {
                     "defaultValues": {
                     },
                     "constantParameters": []
                 },
                 "SolveLastMileDelivery": {
                     "defaultValues": {
                     },
                     "constantParameters": []
                 }
             }
         },
         "syncNetworkAnalysis": {
             "serviceProperties": {
             },
             "toolProperties": {
                 "EditVehicleRoutingProblem": {
                     "defaultValues": {
                     },
                     "constantParameters": []
                 },
                 "SnapToRoads": {
                     "defaultValues": {
                     },
                     "constantParameters": []
                 }
             }
         },
         "routingUtilities": {
             "serviceProperties": {
             }
         }
     }
 }
}

プロパティ ファイルの編集とアップロード

ルート検索サービスを構成するときに、インスタンスの最小数や最大数など、ユーザー指定のプロパティを含むプロパティ ファイルをアップロードできます。 プロパティ ファイルは、ArcGIS Server インストール ディレクトリー内の <install folder>/framework/runtime/ArcGIS/Resources/ArcToolBox/Services/routingservices/publishroutingservices.json にあります。 プロパティを変更するには、このファイルのコピーを作成し、テキスト エディターを使用してそのコピーを編集します。

ヒント:

このファイルを編集する際には、JSON 構文を解釈する Visual Studio Code などのテキスト エディターを使用して、プロパティ ファイルの編集中に構文エラーが発生しないようにすることをおすすめします。 プロパティ ファイルに JSON 構文エラーがあると、ルート検索サービスの構成プロセスが正常に実行されません。