配置地图服务提供者

发送反馈


SuperMap iServer 支持以下类型的地图服务提供者:

配置本地地图服务提供者

配置一个 UGC 地图服务提供者,如下所示:

<provider name="ugcMapProvider1" class="com.supermap.services.providers.UGCMapProvider">
        <config class="com.supermap.services.providers.UGCMapProviderSetting">
                <outputPath>../webapps/iserver/output</outputPath>
                <outputSite>http://localhost:8090/iserver/output/</outputSite>
                <workspacePath>server=../samples/data/World/World.sxwu;password=supermap</workspacePath>
                <cacheVersion>4.0</cacheVersion>
                <useCompactCache>false</useCompactCache>
                <multiThread>true</multiThread>
                <!-- 是否禁用扩大查询功能 -->                
                <inflatDisabled>true</inflatDisabled>               
                <poolSize>0</poolSize>                 <preferedPNGType>PNG</preferedPNGType>                 <queryExpectCount>1000</queryExpectCount>                 <leftTopCorner>                         <x>-180.0</x>                         <y>90.0</y>                 </leftTopCorner>                <!-- 设置排除字段 -->                
               <excludedFieldsInMaps>                      <com.supermap.services.providers.ExcludedFieldsInMap>                           <mapName>World</mapName>                           <excludedFieldsInLayers>                                <com.supermap.services.providers.ExcludedFieldsInLayer>                                   <layerName>Captial@World</layerName>                                    <excludedFields>SMID,NAME</excludedFields>                                </com.supermap.services.providers.ExcludedFieldsInLayer>                           </excludedFieldsInLayers>                     </com.supermap.services.providers.ExcludedFieldsInMap>                 </excludedFieldsInMaps>         </config> </provider>

其中<provider>中的 class 标识的是 UGC 服务提供者的实现类,<config>中的 class 标识的是 UGC 服务提供者对应的配置类,即 UGCMapProviderSetting ,<config>中的内容是 UGCMapProviderSetting 对应的配置项:

其中,com.supermap.services.providers.ExcludedFieldsInMap、com.supermap.services.providers.ExcludedFieldsInLayer为字段排除设置实现类。<mapName>为地图名称,<layerName>为数据集名称,<excludedFields>指定排除的字段。

SuperMap iServer 也支持 Oracle 及 SQL Server 数据库型的工作空间作为服务提供者。需要提供的参数如表1所示,没有特殊说明表示两种类型都需要该参数。

表1 数据库型工作空间信息设置参数

参数名称 描述
type 工作空间的类型,目前支持的数据库型工作空间为 Oracle 工作空间和 SQL Server 工作空间,其值分别为 ORACLE 和 SQL。ORACLE 表示工作空间保存在 oracle 数据库中,SQL 表示工作空间保存在 SQL Server 数据库中。
name 工作空间在数据库中的名称。
username 用来登录数据库的用户名。
password 用来登录数据库的密码。
server 服务器名称。对于 Oracle 数据库,其服务器名为其 TNS 服务名称;对于 SQL Server 数据库,其服务器名为其系统 DSN(Database System Name)名称
database 数据库名称。
driver 当采用 ODBC 连接时的驱动程序名称。只有 SQL Server 数据库使用 ODBC 连接,其驱动程序名可为 SQL Server 或 SQL Native Client。
<workspacePath>type=ORACLE;name=testOralce;username=cq;password=cq;server=ISERVER;database=iserver</workspacePath>  
<workspacePath>type=SQL;name=testSQL;username=sa;password=iserver;server=ISERVICE\SQL2005;driver= 
 SQL Server;database=iserver</workspacePath> 

此外,多个<provider>可以绑定为一个整体,即作为一个<providerSet>向服务组件(<component>)提供服务,详见通过 XML 文件配置服务提供者集合。<provider> 和 <providerSet> 在配置文件中的结构如下所示:

<server>
        ...
        <application>
                ...
                <providerSets>
                        ...
                        <providerSet>
                                ...
                        </providerSet>
                </providerSets>
                <providers>
                        ...
                        <provider>
                        ...
                        </provider>
                </providers>
        </application>
</server>

配置 REST 地图服务提供者

配置 REST 服务提供者在<provider>节点中进行:

<provider name="restMapProvider1" class="com.supermap.services.providers.RESTMapProvider">
        <config class="com.supermap.services.providers.RESTMapProviderSetting">
                <restServiceRootURL>http://localhost:8090/iserver/services/rest</restServiceRootURL>
                <token>GsXST0cE0CumxQUFXBX7Oopin4<token>
        </config>
</provider>

其中<provider>中的 class 标识的是 REST 服务提供者的实现类,<config>中的 class 标识的是 REST 服务提供者对应的配置类,即 RESTMapProviderSetting ,<config>中的内容是 RESTMapProviderSetting 对应的配置项:

配置 超图云 地图服务提供者

超图云服务提供者的配置在<provider>节点中进行。具体配置方式如下:

<provider name="CloudMapProvider1" class="com.supermap.services.providers.CloudMapProvider">
        <config class="com.supermap.services.providers.CloudMapProviderSetting">
                <outputPath>../webapps/iserver/output</outputPath>
                <outputSite>http://localhost:8090/iserver/output/</outputSite>
                <servicesUrl>http://t0.supermapcloud.com/FileService/image</servicesUrl>
                <cacheEnabled>true</cacheEnable> 
        </config>
</provider>

其中<provider>中的 class 标识的是 超图云 服务提供者的实现类,<config>中的  class 标识的是 超图云 服务提供者对应的配置类,即 CloudMapProviderSetting,<config>中的内容对应的是 CloudMapProviderSetting 对应的配置项:

配置 FastDFS 地图服务提供者

FastDFS 服务提供者的配置在<provider>节点中进行。具体配置方式如下:

    <provider class="com.supermap.services.providers.FastDFSTileProvider" enabled="true" name="fastDfs"> 
      <config class="com.supermap.services.providers.FastDFSTileProviderSetting"> 
        <fdfsTrackers> 
          <string>192.168.112.251:22122</string> 
        </fdfsTrackers>  
        <fdhtGroups> 
          <string-array> 
            <string>192.168.112.250:11411</string> 
          </string-array> 
        </fdhtGroups> 
      </config> 
    </provider>

其中<provider>中的 class 标识的是 FastDFS 服务提供者的实现类,<config>中的  class 标识的是 FastDFS 服务提供者对应的配置类,即 FastDFSTileProviderSetting,<config>中的内容对应的是 FastDFSTileProviderSetting 对应的配置项:

配置 GDP 地图服务提供者

GDP 地图服务提供者的配置在<provider>节点中进行。具体配置方式如下:

<provider class="com.supermap.services.providers.GDPMapProvider" enabled="true" name="gdpMapProvider-"> 
	<config class="com.supermap.services.providers.GDPMapProviderSetting"> 
		<cacheVersion>5.0</cacheVersion>  
		<filesPath>F:\SuperMap\China_58b994e9-5856-4a10-a0dc-0e0e177d7962\7_0000_0000_192.168.120.42_2014_03_03_14_01_56.zip</filesPath>  
		<dpi>96.0</dpi>  
		<tileSize>256</tileSize>  
		<zoom0ScaleDenator>5.916587109091312E8</zoom0ScaleDenator> 
	</config> 
</provider> 

其中<provider>中的 class 标识的是 GDP 服务提供者的实现类,<config>中的  class 标识的是 GDP 服务提供者对应的配置类,即 GDPMapProviderSetting,<config>中的内容对应的是 GDPMapProviderSetting 对应的配置项:

 

配置 MongoDB 地图服务提供者

MongoDB 服务提供者的配置在<provider>节点中进行。具体配置方式如下:

<provider class="com.supermap.services.providers.MongoDBTileProvider" enabled="true" name="mongoDBMapProvider-China"> 
      <config class="com.supermap.services.providers.MongoDBTileProviderSetting"> 
        <serverAdresses> 
          <string>localhost:27017</string> 
        </serverAdresses>  
        <mapName>China</mapName>  
        <tilesetName>1181328118</tilesetName>  
        <database>smtiles</database>  
        <username>iserver</username>  
        <password>iserver</password> 
      </config> 
    </provider> 

其中<provider>中的 class 标识的是 MongoDB 服务提供者的实现类,<config>中的  class 标识的是 MongoDB 服务提供者对应的配置类,即 MongoDBTileProviderSetting,<config>中的内容对应的是 MongoDBTileProviderSetting 对应的配置项:

 

配置 OTS 地图服务提供者

OTS 服务提供者的配置在<provider>节点中进行。具体配置方式如下:

    <provider class="com.supermap.services.providers.OTSTileProvider" enabled="true" name="ots-map"> 
      <config class="com.supermap.services.providers.OTSTileProviderSetting">
        <outputPath>D:\SuperMap\SuperMapiServer8C(2017)\webapps\iserver\output</outputPath>  
        <outputSite>http://{ip}:{port}/iserver/output/</outputSite>  
        <nodeName>cn-hangzhou</nodeName>  
        <instanceName>tileStore</instanceName>  
        <accessKeyId>accessKeyId</accessKeyId>  
        <accessKeySecret>accessKeySecret</accessKeySecret>  
        <fromPublic>true</fromPublic> 
      </config> 
    </provider>  

其中<provider>中的 class 标识的是 OTS 服务提供者的实现类,<config>中的  class 标识的是 OTS 服务提供者对应的配置类,即 OTSTileProviderSetting,<config>中的内容对应的是OTSTileProviderSetting 对应的配置项:

 

 

配置 SMTiles 地图服务提供者

 SMTiles 服务提供者的配置在<provider>节点中进行。具体配置方式如下:

<provider name="smtilesMapProvider1" class="com.supermap.services.providers.SMTilesMapProvider">
        <config class="com.supermap.services.providers.SMTilesMapProviderSetting">
                <filePath>../webapps/iserver/output/sqlite/World_-411043745_256X256_PNG.smtiles</filePath>
        </config>
</provider>

其中<provider>中的 class 标识的是  SMTiles 地图服务提供者的实现类,<config>中的  class 标识的是 SMTiles 地图服务提供者对应的配置类,即 SMTilesMapProviderSetting,<config>中的内容对应的是 SMTilesMapProviderSetting 对应的配置项:

配置 SVTiles 地图服务提供者

 SVTiles 服务提供者的配置在<provider>节点中进行。具体配置方式如下:

<provider name="svtilesMapProvider1" class="com.supermap.services.providers.SVTilesMapProvider">
        <config class="com.supermap.services.providers.SVTilesMapProviderSetting">
                <filePath>../webapps/iserver/output/sqlite/World_1715141636_256X256.svtiles</filePath>
        </config>
</provider>

其中<provider>中的 class 标识的是  SVTiles 地图服务提供者的实现类,<config>中的  class 标识的是 SVTiles 地图服务提供者对应的配置类,即 SVTilesMapProviderSetting,<config>中的内容对应的是 SVTilesMapProviderSetting 对应的配置项:

配置 UGCV5 地图服务提供者

UGCV5 服务提供者的配置在<provider>节点中进行。具体配置方式如下:

    <provider class="com.supermap.services.providers.UGCV5TileProvider" enabled="true" name="ugcv5-China"> 
      <config class="com.supermap.services.providers.UGCV5TileProviderSetting"> 
        <configFile>../webapps/iserver/output/cache/China/China.sci</configFile> 
      </config> 
    </provider>

其中<provider>中的 class 标识的是 UGCV5 服务提供者的实现类,<config>中的  class 标识的是 UGCV5 服务提供者对应的配置类,即 UGCV5TileProviderSetting,<config>中的内容对应的是 UGCV5TileProviderSetting 对应的配置项:

配置 WMS 地图服务提供者

配置 WMS 服务提供者在<provider>节点中进行:

<!-- WMS 地图服务提供者示例,使用远程的 WMS 服务作为数据来源。-->
<provider name="wmsMapProvider" class="com.supermap.services.providers.WMSMapProvider">
        <config class="com.supermap.services.providers.WMSMapProviderSetting">
                <serviceRootURL>http://localhost:7070/geoserver/wms</serviceRootURL>
                <username></username>
                <password></password>
                <version>1.1.1</version>
                <reverseLayerOrder>false</reverseLayerOrder>         </config> </provider>

其中<provider>中的 class 标识的是 WMS 服务提供者的实现类,<config>中的 class 标识的是 WMS 服务提供者对应的配置类,即 WMSMapProviderSetting ,<config>中的内容是 WMSMapProviderSetting 对应的配置项:

配置 WMTS 地图服务提供者

配置 WMTS 服务提供者在<provider>节点中进行:

<!-- WMTS 地图服务提供者示例,使用远程的 WMTS 服务作为数据来源。-->
<provider name="wmtsMapProvider" class="com.supermap.services.providers.WMTSMapProvider">
        <config class="com.supermap.services.providers.WMTSMapProviderSetting">
                <serviceRootURL>http://server:7070/geoserver/wmts</serviceRootURL>
                <username></username>
                <password></password>
                <version>1.0.0</version>
                <dpi>90.7142857142857</dpi>
                <layers>
                        <com.supermap.services.providers.WMTSMapLayer>
                                <identifier>world:Countries</identifier>
                                <tileMatrixSet>EPSG:4610</tileMatrixSet>
                        </com.supermap.services.providers.WMTSMapLayer>
                        <com.supermap.services.providers.WMTSMapLayer>
                                <identifier>nurc:Img_Sample</identifier> 
                                <tileMatrixSet>EPSG:900913</tileMatrixSet>
                        </com.supermap.services.providers.WMTSMapLayer>
                </layers> 
                <reverseTopLeftCorner>EPSG:4610</reverseTopLeftCorner>
                <reverseBoundingBox>urn:ogc:def:crs:EPSG::4610</reverseBoundingBox>
        <cacheEnabled>true</cacheEnabled>
        <resolutions>0.01903568804664224,0.00951784402332112,......</resolutions> 
        </config>
</provider>

其中<provider>中的 class 标识的是 WMTS 服务提供者的实现类,<config>中的 class 标识的是 WMTS 服务提供者对应的配置类,即 WMTSMapProviderSetting ,<config>中的内容是 WMTSMapProviderSetting 对应的配置项:

配置 Bing Maps 地图服务提供者

BingMaps 服务提供者在<provider>节点中进行。具体配置方式如下:

<provider name="BingMapsMapProvider1" class="com.supermap.services.providers.BingMapsMapProvider">
        <config class="com.supermap.services.providers.BingMapsMapProviderSetting">
                <outputPath>../webapps/iserver/output</outputPath>
                <outputSite>http://localhost:8090/iserver/output/</outputSite>
                <apiKey>fdskjkfdsk</apiKey>
                <bingmapsRootUrl>http://localhost:9876/bingmaps/</bingmapsRootUrl>
                <imagerySet>Road</imagerySet>
                <mapVersion>v1</mapVersion>
                <cacheEnabled>true</cacheEnable>
        </config>
</provider>

其中<provider>中的 class 标识的是 BingMaps 服务提供者的实现类,<config>中的  class 标识的是 BingMaps 服务提供者对应的配置类,即 BingMapsMapProviderSetting,<config>中的内容是 BingMapsMapProviderSetting 对应的配置项:

配置 Google Maps 地图服务提供者

Google 地图地图服务提供者的配置在<provider>节点中进行。具体配置方式如下:

<provider class="com.supermap.services.providers.GoogleMapsMapProvider" enabled="true" name="googlemap"> 
  <config class="com.supermap.services.providers.GoogleMapsMapProviderSetting"> 
    <outputPath/>  
    <outputSite/>  
    <cacheEnabled>false</cacheEnabled>  
    <googleMapLanguage>zh-cn</googleMapLanguage>  
    <googleMapCryptoKey>abcdefghijklmn=</googleMapCryptoKey>  
    <googleMapClientID>myClientID</googleMapClientID>  
    <googleMapWidth>400</googleMapWidth>  
    <googleMapHeight>400</googleMapHeight>
    <googleProxyAddress>127.0.0.1</googleProxyAddress>		
    <googleProxyPort>8787</googleProxyPort>  
    <useTileImage>true</useTileImage> 
  </config> 
</provider>

其中<provider>中的 class 标识的是 Google 地图服务提供者的实现类,<config>中的  class 标识的是 Google 地图服务提供者对应的配置类,即 GoogleMapsMapProviderSetting,<config>中的内容是  GoogleMapsMapProviderSetting 对应的配置项:

 

配置 百度 地图服务提供者

百度地图地图服务提供者的配置在<provider>节点中进行。具体配置方式如下:

<provider name="baiduMapProvider1" class="com.supermap.services.providers.BaiduMapProvider">
        <config class="com.supermap.services.providers.BaiduMapProviderSetting">
                <outputPath>../webapps/iserver/output</outputPath>
                <outputSite>http://localhost:8090/iserver/output/</outputSite>
                <mapUrl>http://online0.map.bdimg.com/tile/?qt=tile&x={x}&y={y}&z={z}&styles=pl</mapUrl>
                <mapName>true</mapName> 
                <cacheEnabled>true</cacheEnable>
        </config>
</provider>

其中<provider>中的 class 标识的是 百度地图地图 服务提供者的实现类,<config>中的  class 标识的是百度地图地图 服务提供者对应的配置类,即 BaiduMapProviderSetting,<config>中的内容是  BaiduMapProviderSetting 对应的配置项:

配置 OpenStreetMap 地图服务提供者

OpenStreetMap 地图服务提供者的配置在<provider>节点中进行。具体配置方式如下:

<provider name="openStreetMapProvider1" class="com.supermap.services.providers.OpenStreetMapProvider">
        <config class="com.supermap.services.providers.OpenStreetMapProviderSetting">
                <outputPath>../webapps/iserver/output</outputPath>
                <outputSite>http://localhost:8090/iserver/output/</outputSite>
                <mapUrl>http://a.tile.openstreetmap.org/{z}/{x}/{y}.png</mapUrl>
                <mapName>true</mapName> 
                <cacheEnabled>true</cacheEnable>
        </config>
</provider>

其中<provider>中的 class 标识的是 OpenStreetMap 地图服务提供者的实现类,<config>中的  class 标识的是百度地图地图 服务提供者对应的配置类,即 OpenStreetMap ProviderSetting,<config>中的内容是  OpenStreetMapProviderSetting 对应的配置项:

配置 天地图 地图服务提供者

天地图服务提供者的配置在<provider>节点中进行。具体配置方式如下:

<provider name="tiandituMapProvider1" class="com.supermap.services.providers.TiandituMapProvider">
        <config class="com.supermap.services.providers.TiandituMapProviderSetting">
                <outputPath>../webapps/iserver/output</outputPath>
                <outputSite>http://localhost:8090/iserver/output/</outputSite>
                <servicesUrl>http://t5.tianditu.cn</servicesUrl>
                <cacheEnabled>true</cacheEnable>
        </config>
</provider>

其中<provider>中的 class 标识的是 天地图 服务提供者的实现类,<config>中的  class 标识的是 天地图 服务提供者对应的配置类,即 TiandituMapProviderSetting,<config>中的内容是  TiandituMapProviderSetting 对应的配置项:

配置 ArcGIS REST 地图服务提供者

ArcGIS REST 服务提供者的配置在<provider>节点中进行。配置方式如下:

    <provider class="com.supermap.services.providers.ArcGISRestMapProvider" enabled="true" name="arcgis-Countries2"> 
      <config class="com.supermap.services.providers.ArcGISRestMapProviderSetting"> 
        <restServiceRootURL>http://localhost:6080/arcgis/rest/services/mytest/Countries/MapServer</restServiceRootURL>  
        <cacheEnabled>false</cacheEnabled>  
        <token>_jLYzPo-SEJRXfB3Q-W2EearDDnaIZTqQqUfju4GD8Owd6PIiUVmabUJiSdZeX1V</token>  
        <httpReferer>ISERVER</httpReferer>
      </config> 
    </provider> 

其中<provider>中的 class 标识的是 ArcGIS REST 地图服务提供者的实现类,<config>中的  class 标识的是 ArcGIS REST 地图服务提供者对应的配置类,即 ArcGISRestMapProviderSetting,<config>中的内容对应的是 ArcGISRestMapProviderSetting 对应的配置项:

配置 TPK 地图服务提供者

TPK 服务提供者的配置在<provider>节点中进行。配置方式如下:

    <provider class="com.supermap.services.providers.TPKMapProvider" enabled="true" name="tpk-map1"> 
      <config class="com.supermap.services.providers.TPKMapProviderSetting"> 
        <tilePackagePath>../samples/data/map1.tpk</tilePackagePath> 
      </config> 
    </provider>

其中<provider>中的 class 标识的是 TPK 地图服务提供者的实现类,<config>中的  class 标识的是 TPK 地图服务提供者对应的配置类,即 TPKMapProviderSetting,<config>中的内容对应的是 TPKMapProviderSetting 对应的配置项:

配置 GeoPackage 地图服务提供者

GeoPackage 服务提供者的配置在<provider>节点中进行。配置方式如下:

 <provider class="com.supermap.services.providers.GeoPackageMapProvider" enabled="true" name="gpkgMap-map"> 
      <config class="com.supermap.services.providers.GeoPackageMapProviderSetting"> 
        <outputPath>F:\dev\trunk\etc\iserver-debug\src\test\webapps\iserver\output</outputPath>  
        <outputSite>http://localhost:8090/iserver/output/</outputSite>  
        <filePath>E:/data/geopackage/map.gpkg</filePath>  
        <defaultMapPrjCoordSys>0</defaultMapPrjCoordSys>  
        <queryExpectCount>1000</queryExpectCount>  
        <axisPositiveDirection>RightUp</axisPositiveDirection>  
        <originalPoint>-180,-90</originalPoint>
      </config> 
    </provider> 

其中<provider>中的 class 标识的是 GeoPackage 地图服务提供者的实现类,<config>中的 class 标识的是 GeoPackage 地图服务提供者对应的配置类,即 GeoPackageMapProviderSetting,<config>中的内容对应的是 GeoPackageMapProviderSetting  对应的配置项:

配置 ZXYTiles 地图服务提供者

ZXYTiles 服务提供者的配置在<provider>节点中进行。具体配置方式如下:

     <provider class="com.supermap.services.providers.ZXYTilesMapProvider" enabled="true" name="zxytest">
      <config class="com.supermap.services.providers.ZXYTilesMapProviderSetting">
        <outputPath>../../webapps/iserver/output</outputPath>  
        <outputSite>http://{ip}:{port}/iserver/output/</outputSite>  
        <filePath>E:/data/ZXYTilesSample.zip</filePath>
    </provider> 

其中<provider>中的 class 标识的是  ZXYTiles 地图服务提供者的实现类,<config>中的  class 标识的是 ZXYTiles 地图服务提供者对应的配置类,即 ZXYTilesMapProviderSetting,<config>中的内容对应的是 ZXYTilesMapProviderSetting 对应的配置项:

配置 ArcGIS 缓存地图服务提供者

ArcGIS 缓存服务提供者的配置在<provider>节点中进行。具体配置方式如下:

    <provider class="com.supermap.services.providers.ArcGISCacheMapProvider" enabled="true" name="agscache-WorldCitiesPopulation"> 
      <config class="com.supermap.services.providers.ArcGISCacheMapProviderSetting">
        <outputPath>../../webapps/iserver/output</outputPath>  
        <outputSite>http://{ip}:{port}/iserver/output/</outputSite>  
        <configFile>E:/data/arcgiscache/sample/World Cities Population/conf.xml</configFile>
      </config>
    </provider>

其中<provider>中的 class 标识的是  ArcGIS 缓存地图服务提供者的实现类,<config>中的  class 标识的是 ArcGIS 缓存服务提供者对应的配置类,即 ArcGISCacheMapProviderSetting,<config>中的内容对应的是 ArcGISCacheMapProviderSetting 对应的配置项: