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>5.0</cacheVersion>
                <useCompactCache>false</useCompactCache>
                <multiThread>true</multiThread>
                <fullLabelEnabled>false</fullLabelEnabled>
                <!-- 是否禁用扩大查询功能 -->
                <inflatDisabled>true</inflatDisabled;>
                <poolSize>0</poolSize>
                <preferedPNGType>PNG</preferedPNGType>
                <queryExpectCount>1000</queryExpectCount>
                <leftTopCorner>
                        <x>-180.0</x>
                        <y>90.0</y>
                </leftTopCorner>
                <dpi>0</dpi>
               <!-- 设置排除字段 -->
               <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 对应的配置项:

  • <inflatDisabled>:动态出图是否禁用扩大查询范围功能。为true时表示关闭扩大查询范围,对于浏览瓦片地图时,可将该参数设置为false,表示开启扩大查询,以保证相邻瓦片正常拼接,出图完整。需要将该选项设置为false,即在动态出图时,扩大查询范围。当浏览非瓦片地图时,为了提高出图性能,可以将该参数设置为true,禁用扩大查询功能,仅浏览所需范围的区域。
  • <outputPath>:图片的输出路径。
  • <outputSite>:访问图片的根目录 URI。
  • <workspacePath>:该服务提供者所用的工作空间的路径。若工作空间有密码,假设密码为 supermap,则写为:   
  • <workspacePath>server=../samples/data/World/World.sxwu;password=supermap</workspacePath> 

    此外,工作空间路径支持从环境变量和系统配置文件中读取。可写为:

    <workspacePath>server=${datapath1}/World.sxwu;password=supermap</workspacePath> 
    详细说明请参见:预设本地工作空间路径
  •  
  • <cacheVersion>:指定动态缓存的版本,默认为5.0,目前 iServer 支持的缓存版本信息详见SuperMap 缓存策略。如果需要兼容 SuperMap iServer 2008生成的简易缓存,则缓存版本需设置为3.1。
  • <ignoreHashcodeWhenUseCache>:如果为 true,表示读取原始缓存时忽略 hashcode,默认为 false。此参数支持4.0和5.0缓存。
  • <useCompactCache>:是否使用紧凑格式的缓存,如果设为 true 则使用紧凑缓存,默认为 false。目前只有5.0版本的缓存支持该参数。
  • <multiThread>:是否使用多线程,默认为 true。
  • <fullLabelEnabled>:是否完整显示标签,默认为 false。当设置为 true 时,浏览地图时将显示完整标签,而无法显示全的标签将不显示。
  • <poolSize>:线程缓冲池大小,详见服务提供者配置的参数说明
  • <preferedPNGType>:使用 PNG 缓存时首选 PNG 图片类型,目前支持 PNG 和 PNG8,若为 null 则默认使用 PNG。详见服务提供者配置的参数说明
  • <queryExpectCount>:服务端默认返回查询结果条目的数量,默认为1000。
  • <leftTopCorner>:设置地图切片时,左上角的起始点,默认为地图范围的左上角坐标。
  • <dpi>:设置地图的 DPI,DPI 最低可设为 60,如不设置该参数则将采用缺省值 0,即 DPI 使用地图默认值。
  • <cacheDisabled>:是否禁用缓存,默认为使用。出图参数中也可以设置是否使用缓存,当两者发生冲突时,采用禁用优先原则。详见服务提供者配置的参数说明
  • <tileCacheReadOnly>:栅格瓦片缓存是否只读。
  • <vectorCacheDisable>:是否启用矢量瓦片缓存。
  • <outputVectorPath>:矢量瓦片缓存存储位置。
  • <vectorCacheReadOnly>:矢量瓦片缓存是否只读。
  • <excludedFieldsInMaps>:设置排除字段。管理员可以根据需要,排除指定图层的字段,当用户进行地图查询操作时,将查看不到已排除的字段。

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

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

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

参数名称 描述
type 工作空间的类型,目前支持的数据库型工作空间为 Oracle 工作空间、SQL Server 工作空间、DM 工作空间,其值分别为 ORACLE、 SQL、DM。ORACLE 表示工作空间保存在 oracle 数据库中,SQL 表示工作空间保存在 SQL Server 数据库中,DM 表示工作空间保存在 DM 数据库中。
name 工作空间在数据库中的名称。
username 用来登录数据库的用户名。
password 用来登录数据库的密码。
server 服务器名称。对于 Oracle 数据库,其服务器名为其 TNS 服务名称;对于 SQL Server 数据库,其服务器名为其系统 DSN(Database System Name)名称;对 DM 数据库,其服务器名为 DM 数据库所在机器的 IP,如 192.168.110.110。
database 数据库名称。
driver 当采用 ODBC 连接时的驱动程序名称。只有 SQL Server 数据库使用 ODBC 连接,其驱动程序名可为 SQL Server 或 SQL Native Client。
  • 使用 Oracle 数据库提供数据源的<workspacePath>格式如下:
<workspacePath>type=ORACLE;name=testOralce;username=cq;password=cq;server=ISERVER;database=iserver</workspacePath>  
  • 使用 SQL 数据库提供数据源的<workspacePath>为:
<workspacePath>type=SQL;name=testSQL;username=sa;password=iserver;server=ISERVICE\SQL2005;driver= 
 SQL Server;database=iserver</workspacePath> 
  • 使用 DM 数据库提供数据源的<workspacePath>为:
<workspacePath>type=DM;name=testDM;username=sa;password=iserver;server=ISERVICE\DM7;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 对应的配置项:

  • <restServiceRootURL>:REST 地图服务的地址,指向服务的根资源路径,如 http://localhost:8090/iserver/services/map-china400/rest。
  • <useCache>:是否使用缓存。默认为 true。开启缓存后,对资源的 REST 请求会缓存在本地,下次收到同样的请求就直接在缓存中读取,不需要再向服务端发送。
  • <restProviderCacheConfig>:服务提供者历史请求缓存在内存中的存储设置,包括:
  • <maxElementsInMemory>:内存中允许存储的最大请求记录数。0代表无限制;1代表不使用内存缓存,默认为1。如果不为1,则优先向内存中存储请求记录。
  • <maxSizeOnDisk>:磁盘最大容量。单位为 MB,默认大小为2048MB。
  • <timeToLiveSeconds>:设置缓存存活的时间上限,超时后会自动清除缓存。从创建记录开始计算,单位为秒,默认为0,代表缓存永久存活。
  • <timeToIdleSeconds>:设置缓存闲置的时间上限,超时后会自动清除缓存。从上次被访问开始计算,单位为秒,默认为0,代表缓存永久存活。
  • <token>:启用安全机制的情况下,访问受保护的 REST 资源需要提供Token 令牌

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

超图云服务提供者的配置在<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://t2.supermapcloud.com/FileService/image</servicesUrl>
                <cacheEnabled>true</cacheEnable> 
        </config>
</provider>

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

  • <outputPath>:图片的输出路径。
  • <outputSite>:访问图片的根目录 URI。
  • <servicesUrl>:远程超图云地图服务的出图服务地址。如果用户设置 servicesUrl,则使用用户设置的服务地址,否则使用默认的服务地址:http://t2.supermapcloud.com/FileService/image。
  • <cacheEnabled>:是否缓存到本地。为 true 时,访问发布的服务时就可以在本地生成地图缓存,从而可以提高后续服务浏览访问的速度。默认为 true。
  • <tileCacheReadOnly>:栅格瓦片缓存是否只读。

配置 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 对应的配置项:

  • <fdfsTrackers>:FastDFS Trackers 服务地址。
  • <fdhtGroups>:FastDHT Groups 服务地址。
  • <mapName>:发布的地图的名称,如果不设置,默认发布当前存储位置的全部地图。
  • <tilesetName>:发布瓦片集的名称,不需手动设置。
  • <watermark>:设置发布的瓦片中是否带水印(其中所添加的类型包括:图片或者文字)。默认为false。详细请参照 配置UGCV5地图服务提供者

配置 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 对应的配置项:

  • <filesPath>:GDP 瓦片包的路径。
  • <cacheVersion>:瓦片的版本。
  • <dpi>:瓦片的 DPI,默认为96。
  • <tileSize>:瓦片的大小,默认为256。
  • <zoom0ScaleDenator>:第0级比例尺分母,默认为5.916587109091312E8。
  • <bounds>:地图范围,默认为:-20037508.3427892440,-20037508.3427892440,20037508.3427892440,20037508.3427892440。
  • <format>:瓦片的格式,如 png。
  • <watermark>:设置发布的瓦片中是否带水印(其中所添加的类型包括:图片或者文字)。默认为false。详细请参照 配置UGCV5地图服务提供者

配置 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 对应的配置项:

  • <serverAdresses>:MongoDB 服务器的地址。
  • <mapName>:发布的地图的名称,如果不设置,默认发布当前存储位置的全部地图。
  • <tilesetName>:发布瓦片集的名称,不需手动设置。
  • <database>:用来存储这些地图瓦片的数据库。默认使用名为 smtiles 的数据库。
  • <username>:具有访问该数据库权限的用户名。
  • <password>:该用户的密码。
  • <watermark>:设置发布的瓦片中是否带水印(其中所添加的类型包括:图片或者文字)。默认为false。详细请参照 配置UGCV5地图服务提供者

配置 MongoDB MVT 地图服务提供者

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

    <provider class="com.supermap.services.providers.MongoDBMVTTileProvider" enabled="true" name="mongodbMvt-China">
      <config class="com.supermap.services.providers.MongoDBTileProviderSetting">
        <outputPath>./output</outputPath>  
        <outputSite>http://{ip}:{port}/iserver/output/</outputSite>  
        <serverAdresses>
          <string>localhost:27017</string>
        </serverAdresses>  
        <mapName>China</mapName>  
        <tilesetName>China</tilesetName>  
        <database>mvt</database>  
        <username>iserver</username>
        <password>iserver</password>
      </config>
    </provider>

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

  • <serverAdresses>:MongoDB 服务器的地址。
  • <mapName>:发布的地图的名称,如果不设置,默认发布当前存储位置的全部地图。
  • <tilesetName>:发布瓦片集的名称,不需手动设置。
  • <database>:用来存储这些地图瓦片的数据库。默认使用名为 smtiles 的数据库。
  • <username>:具有访问该数据库权限的用户名。
  • <password>:该用户的密码。
  • <watermark>:设置发布的瓦片中是否带水印(其中所添加的类型包括:图片或者文字)。默认为false。详细请参照 配置UGCV5地图服务提供者

配置 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\SuperMapiServer9D\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 对应的配置项:

  • <outputPath>:图片的输出路径。
  • <outputSite>:访问图片的根目录 URI。
  • <nodeName>:节点名称。阿里云服务节点,为创建实例时选择的地址。
  • <instanceName>:实例名称。在此处填写在阿里云控制台管理中创建的实例名称。
  • <accessKeyId>:在阿里云官网的“管理控制台”申请获取的AccessKeyId。
  • <accessKeySecret>:在阿里云官网的“管理控制台”申请获取的AccessKeySecret。
  • <fromPublic>:是否公网访问。公网访问时,访问的OTS服务地址为:http://<instanceName>.<nodeName>.ots.aliyuncs.com。非公网访问时,访问的OTS服务地址为:http://<instanceName>.<nodeName>.ots-internal.aliyuncs.com。
  • <watermark>:设置发布的瓦片中是否带水印(其中所添加的类型包括:图片或者文字)。默认为false。详细请参照 配置UGCV5地图服务提供者

配置 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 对应的配置项:

  • <filePath>:SMTiles 缓存文件的路径。该缓存文件可以是 SuperMap iServer 和 iEdge 生成的 SMTiles 缓存文件。
  • <watermark>:设置发布的瓦片中是否带水印(其中所添加的类型包括:图片或者文字)。默认为false。详细请参照 配置UGCV5地图服务提供者

配置 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 对应的配置项:

  • <filePath>:SVTiles 缓存文件的路径。该缓存文件可以是 SuperMap iServer 和 iEdge 生成的 SVTiles 缓存文件。
  • <watermark>:设置发布的瓦片中是否带水印(其中所添加的类型包括:图片或者文字)。默认为false。详细请参照 配置UGCV5地图服务提供者

配置 UGCV5 地图服务提供者

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

    <provider class="com.supermap.services.providers.UGCV5TileProvider" enabled="true" name="ugcv5-China"> 
      <config class="com.supermap.services.providers.UGCV5TileProviderSetting">
        <watermark>
          <imageUrl>F:/test/test.png</imageUrl>  
          <imageAlpha>0.5</imageAlpha>  
          <txtContent>ABCD</txtContent>  
          <fontSize>5</fontSize>  
          <fontColor>  
            <red>255</red>  
            <green>0</green>  
            <blue>0</blue>  
            <alpha>255</alpha>  
          </fontColor>  
          <fontStyle>微软雅黑</fontStyle>  
          <xIndex>4</xIndex>  
          <yIndex>5</yIndex>  
          <random>50</random>
        </watermark>  
        <configFile>../webapps/iserver/output/cache/China/China.sci</configFile> 
      </config> 
    </provider>

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

  • <configFile>:SuperMap UGC V5 瓦片的配置文件或索引文件(*.sci 或 *.inf)。
  • <watermark>:设置发布的瓦片中是否带水印(其中所添加的类型包括:图片或者文字。两者同时配置时,图片优先显示)。默认为false。
    • <imageUrl>:图片的路径。
    • <imageAlpha>:图片的透明度。范围:0->1。默认:0.8
    • <txtContent>:文字内容。
    • <fontSize>:文字的大小。默认:20
    • <fontColor>:文字颜色。默认:100,100,100,128
    • <fontStyle>:文字类型。默认:Dialog
    • <xIndex>:水印的位置x。默认:瓦片的中心点x
    • <yIndex>:水印的位置y。默认:瓦片的中心点y
    • <random>:每张瓦片显示水印的几率。范围:1—>100。默认:25

此外,SuperMap iServer 支持配置存储在 S3 对象存储服务中的 UGCV5 原始型瓦片,具体配置方式如下:

    <provider class="com.supermap.services.providers.UGCV5TileProvider" enabled="true" name="map-China-9"> 
      <config class="com.supermap.services.providers.UGCV5TileProviderSetting">
        <outputPath>./output</outputPath> 
        <outputSite>http://{ip}:{port}/iserver/output/</outputSite> 
        <configFile>/iserver-1311973718/picture/png/China/China.sci</configFile> 
        <s3ConnectionInfo> 
          <endpoint>https://cos.ap-beijing.myqcloud.com</endpoint>  
          <region>us-east-1</region>  
          <accessKey>AKIDwlNmxtgJ0UQDqHWYLtCH7C2dx4yRhjs0</accessKey>  
          <secretKey>1Dya5OTSM4av3w4Vr3A3kJoBPREnJfqn</secretKey>  
        </s3ConnectionInfo> 
      </config> 
    </provider>

其中,

  • <outputPath>:地图瓦片在本地的存储位置,默认为 ./output。
  • <outputSite>:地图瓦片的发布站点,默认为 http://{ip}:{port}/iserver/output/。
  • <configFile>:缓存配置文件在 S3 对象存储服务中的存储路径。
  • <s3ConnectionInfo>:S3 对象存储服务的连接信息。
    • <endpoint>:终端节点即对象存储服务在不同区域的区域域名,用于处理各自区域的访问请求。
    • <region>:对象存储服务中桶(Bucket)所在的区域,当存储类型为 Amazon S3 对象存储时,该参数为必填项。
    • <accessKey>:访问密钥ID。与私有访问密钥关联的唯一标识符;访问密钥ID和私有访问密钥一起使用,对请求进行加密签名。
    • <secretKey>:与访问密钥ID结合使用的私有访问密钥,对请求进行加密签名,可标识发送方,并防止请求被修改。

配置 WMS 地图服务提供者

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

<!-- WMS 地图服务提供者示例,使用远程的 WMS 服务作为数据来源。-->
<provider name="wmsMapProvider" class="com.supermap.services.providers.WMSMapProvider">
        <config class="com.supermap.services.providers.WMSMapProviderSetting">
                <outputPath>./output</outputPath>
                <outputSite>http://{ip}:{port}/iserver/output/</outputSite>
                <cacheEnabled>false</cacheEnabled>
                <serviceRootURL>http://localhost:7070/geoserver/wms</serviceRootURL>
                <username></username>
                <password></password>
                <version>1.3.0</version>
                <reverseLayerOrder>false</reverseLayerOrder>
                <defaultScale>1.0E-5</defaultScale>
                <reverseCoordinateSRS>
                      <string>EPSG:4326</string>
                      <string>EPSG:3857</string>
                </reverseCoordinateSRS>       
        </config>
</provider>

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

  • <outputPath>:图片的输出路径。
  • <outputSite>:访问图片的根目录 URI。
  • <cacheEnabled>:是否启用缓存。
  • <serviceRootURL>:WMS 服务的根目录。
  • <username>:WMS 服务授权访问的用户名(可选)。
  • <password>:WMS 服务授权访问的密码(可选)。
  • <version>:WMS 服务的版本号。
  • <reverseCoordinateSRS>: 翻转坐标系(可选),当使用远程的 WMS 服务(1.1.1及1.3.0)作为数据来源时,可设置此参数来对一种或多种坐标系进行翻转。
  • <reverseLayerOrder>:设置图层的顺序是否倒置。
  • <tileCacheReadOnly>:栅格瓦片缓存是否只读。

配置 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> 
                <calcDefaultScaleByResolution>false</calcDefaultScaleByResolution> 
                <originPoint>-20037508.3427892,20037508.3427892</originPoint>
        </config>
</provider>

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

  • <serviceRootURL>:WMTS 服务的根目录。
  • username:WMTS 服务授权访问的用户名(可选)。
  • password:WMTS 服务授权访问的密码(可选)。
  • version:WMTS 服务的版本号(目前支持 1.0.0 版本)。
  • dpi:WMTS 服务源的 dpi。
  • layers:WMTS 服务中的图层集合。
  • reverseTopLeftCorner:iServer 对于 TopLeftCorner 的默认解析规则:TileMatrixSet 使用地理坐标系统,且 TileMatrixSet 的 SupportedCRS 使用 EPSG 命名空间时,按 Y X 的顺序解析 TopLeftCorner;其余情况都按照 X Y 的顺序解析 TopLeftCorner。多个crs之间以英文逗号“,”隔开。若使用的 WMTS 服务的 TopLeftCorner 不满足该规则时,需要把该 TopLeftCorner 对应的 TileMatrixSet 标签下的 Identifier 加入 WMTSMapProvider 的 reverseTopLeftCorner 的配置项里,标识按默认规则相反的坐标顺序解析 TileMatrixSet 的 TopLeftCorner。示例中 Identifier 为 EPSG:4610的 tileMatrixSet,SupportedCRS 为 urn:ogc:def:crs:EPSG::4610,在 geoserver 中 TopLeftCorner 使用 XY 坐标顺序,与 iserver 默认解析规则相反,因此在该配置项下加入了该 layer 的 tileMatrixSet 的 Identifier。
  • cacheEnabled:是否缓存到本地。默认为 true。
  • resolutions:WMTS 服务各级别对应的分辨率(可选)。与所选择比例尺集下的 TileMatrix 保持一致,相邻分辨率以逗号隔开,需要填写 TileMartrix 下所有级别对应的分辨率。
  • calcDefaultScaleByResolution:是否根据默认分辨率计算默认比例尺,默认 false
  • originPoint: 获取起算点的 XY 坐标(可选),用“,”隔开。
  • reverseBoundingBox:设置需要逆序解析BoundingBox的crs集合,多个crs之间以英文逗号“,”隔开。设置了该参数后,对BoundingBox的解析将按照YX的顺序解析。
  • <tileCacheReadOnly>:栅格瓦片缓存是否只读。

配置 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 对应的配置项:

  • <outputPath>:图片的输出路径。
  • <outputSite>:访问图片的根目录 URI。
  • <apiKey>:设置 BingMaps 的授权 key。访问 BingMaps 地图服务需要申请 key,该 key 由 BingMaps 提供。
  • <bingmapsRootUrl>:远程 BingMaps 地图服务的出图服务地址。
  • <imagerySet>:BingMaps 的地图集名称。BingMaps 提供了"Aerial"、"AerialWithLables"、"Birdseye"、"BirdseyeWithLables"、"Road"几种数据集,分别对应不同类型的地图服务。
  • <mapVersion>:BingMaps 的地图版本,如 "v0"、"v1"。
  • <cacheEnabled>:是否缓存到本地。为 true 时,访问发布的服务时就可以在本地生成地图缓存,从而可以提高后续服务浏览访问的速度。默认为 true。
  • <tileCacheReadOnly>:栅格瓦片缓存是否只读。

配置 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 对应的配置项:

  • <apiKey>:Google Maps 的 API 密钥,当使用 Api Key 访问 Google Maps 时必填。(GoogleMaps支持仅使用API key 访问,但该方式可能会有请求限制,为避免配额限制,可通过带私钥的签名访问,这种情况下需要填写 googleMapCryptoKey。)
  • <googleMapClientID>:具有 Google Maps 访问权限的账户。当使用 ClientID  访问 Google Maps 时必填。
  • <googleMapCryptoKey>:该账户的私人密钥。当使用 ClientID  访问 Google Maps 时必填。
  • <googleMapLanguage>:地图中的文本标注所使用的语言。
  • <googleMapWidth>:每次向 Google Maps 请求瓦片时,瓦片的宽度(像素)。因为每次请求的单张瓦片上可能会有一个Geoogle的水印,所以将瓦片设置大一些可以减少整个视窗中的水印密度。但是,单张瓦片过大可能会影响瓦片获取的效率,因为您应该根据软硬件及网络条件,设置合理的值。
  • <googleMapHeight>:每次向 Google Maps 请求瓦片时,瓦片的高度(像素)。一般会设置为宽、高相等的瓦片。
  • <googleProxyAddress>:代理访问 Google Maps 的地址。如果不能正常访问Google Maps,则需要设置此参数。
  • <googleProxyPort>:代理访问 Google Maps 的端口。如果不能正常访问Google Maps,则需要设置此参数。
  • <tileCacheReadOnly>:栅格瓦片缓存是否只读。

配置 百度 地图服务提供者

百度地图服务提供者的配置在<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 对应的配置项:

  • <outputPath>:图片的输出路径。
  • <outputSite>:访问图片的根目录 URI。
  • <mapUrl>:地图服务地址应为一个可获取地图切片的地址模板,其中{x},{y},{z}分别表示切片的列号,行号,级别。如:http://online0.map.bdimg.com/tile/?qt=tile&x={x}&y={y}&z={z}&styles=pl
  • <mapName>:自定义地图名称。当配置了 mapUrl 未配置该参数时,默认为"baidu"。
  • <cacheEnabled>:是否缓存到本地。为 true 时,访问发布的服务时就可以在本地生成地图缓存,从而可以提高后续服务浏览访问的速度。默认为 true。
  • <tileCacheReadOnly>:栅格瓦片缓存是否只读。

配置 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>
                <apikey>abcdefg</apikey>
        </config>
</provider>

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

  • <outputPath>:图片的输出路径。
  • <outputSite>:访问图片的根目录 URI。
  • <mapUrl>:地图服务地址应为一个可获取地图切片的地址模板,其中{x},{y},{z}分别表示切片的列号,行号,级别。如:http://a.tile.openstreetmap.org/{z}/{x}/{y}.png。
  • <mapName>:自定义地图名称。当配置了 mapUrl 未配置该参数时,默认为"OSM"。
  • <cacheEnabled>:是否缓存到本地。为 true 时,访问发布的服务时就可以在本地生成地图缓存,从而可以提高后续服务浏览访问的速度。默认为 true。
  • <apikey>:访问 OpenStreetMap 的密钥,可选参数。如不配置该参数地图可能显示水印。
  • <tileCacheReadOnly>:栅格瓦片缓存是否只读。

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

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

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

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

  • <outputPath>:图片的输出路径。
  • <outputSite>:访问图片的根目录 URI。
  • <servicesUrl>:远程天地图地图服务的出图服务地址。格式如下: http://t<number >.tianditu.gov.cn 天地图提供的服务地址 number 值为0-7,如果用户设置 servicesUrl,则使用用户设置的服务地址,否则随机从0-7中选取一个作为 number 的值来构建服务地址。
  • <cacheEnabled>:是否缓存到本地。为 true 时,访问发布的服务时就可以在本地生成地图缓存,从而可以提高后续服务浏览访问的速度。默认为 true。
  • <key>:天地图 API 及服务接口调用所必需的 Token 字符串,该 Token 可由www.tianditu.gov.cn获取(在申请时请选择“浏览器端”许可)。
  • <tileCacheReadOnly>:栅格瓦片缓存是否只读。

配置 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>
        <replaceTRNS>false</replaceTRNS>
        <customMapName>test</customMapName>
      </config> 
    </provider> 

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

  • <restServiceRootURL>:ArcGIS REST 服务地址。
  • <token>:针对具有访问权限限制的待发布服务的 Token 字符串。如果待发布的服务开启了安全控制,且安全认证方式选择了“Token”,则需要提供可用的 Token 字符串。
  • <httpReferer>:针对具有访问权限限制的待发布服务的 HTTP Referer 字符串 。如果待发布的服务开启了安全控制,安全认证方式选择了“Token”,且生成 Token 时填写了 HTTP Referer 时,需要设置该项。
  • <replaceTRNS>:默认值为false,返回原始瓦片。针对 ArcGIS Server 返回的有些图片为 PNG24 格式(不支持透明),又包含 tRNS 数据块(图像透明数据块)的情况,这种格式的图片,对透明效果支持得不够标准,在浏览器中看不到透明效果。如果期望返回的上述图片能看到透明效果,需设置 replaceTRNS 值为 true,这样在检测到有 PNG24 并且包含 tRNS 数据块时,就重新生成一个 PNG32(支持透明)的图片, 然后根据 tRNS 去填充 PNG32 图片的 Alpha 通道的值,有一定的性能开销。
  • <customMapName>:用于指定转发为 REST 地图服务后的地图名。
  • <tileCacheReadOnly>:栅格瓦片缓存是否只读。
  • <filterVisibleScales>:在转发 ArcGIS REST 服务为 WMTS 服务后,是否根据可见比例尺等信息返回经过滤后的比例尺 TileMatrix,默认为 true。

配置  ArcGIS 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 对应的配置项:

  • <tilePackagePath>:TPK 文件的路径。

配置  ArcGIS VTPK 地图服务提供者

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

    <provider class="com.supermap.services.providers.VTPKMapProvider" enabled="true" name="vtpk-map1"> 
      <config class="com.supermap.services.providers.VTPKMapProviderSetting"> 
        <outputPath>./output</outputPath> 
        <outputSite>http://{ip}:{port}/iserver/output/</outputSite> 
        <vectorTilePackagePath>../samples/data/map1.vtpk</vectorTilePackagePath> 
        <center>
            <x>1.303397289E7</x>
            <y>4390875.375</y>
        </center>
      </config> 
    </provider>

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

  • <vectorTilePackagePath>:VTPK 文件的路径。
  • <outputPath>:图片的输出路径。
  • <outputSite>:访问图片的根目录 URI。
  • <center>:设置地图的中心点(可选)。
    • <x>:中心点的横坐标。
    • <y>:中心点的纵坐标。

配置 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  对应的配置项:

  • <outputPath>:图片的输出路径。
  • <outputSite>:访问图片的根目录 URI。
  • <filePath>:GeoPackage 文件的路径。
  • <defaultMapPrjCoordSys>:GeoPackage 文件发布为地图服务后,地图的默认投影。
  • <queryExpectCount>:期望返回的查询数,默认为 1000 。
  • <axisPositiveDirection>:坐标轴正方向。包括RightDown 和RightUp。默认为RightDown 。
  • <originalPoint>:切片原点,格式为{x},{y}。

配置 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 对应的配置项:

  • <outputPath>:图片的输出路径。
  • <outputSite>:访问图片的根目录 URI。
  • <filePath>:zip 格式的 ZXYTiles 瓦片压缩文件或未压缩的ZXYTiles瓦片文件的存储路径 (路径需要写到地图名所在的层级,如此层级下存在多个地图,发布时会将多个地图瓦片一起发布出来)。

配置 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 对应的配置项:

  • <outputPath>:图片的输出路径。
  • <outputSite>:访问图片的根目录 URI。
  • <configFile>:ArcGIS 缓存配置文件的路径(*.xml或*.cdi)。

配置 ArcGIS 紧凑型缓存 (V2) 地图服务提供者

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

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

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

  • <outputPath>:图片的输出路径。
  • <outputSite>:访问图片的根目录 URI。
  • <configFile>:ArcGIS 紧凑型缓存 (V2) 配置文件的路径(*.xml或*.cdi)。

配置  UGCV5(MVT) 地图服务提供者

    <provider class="com.supermap.services.providers.MVTTileProvider" enabled="true" name="UGCV5-MVT-MAP">
      <config class="com.supermap.services.providers.MVTTileProviderSetting"> 
        <outputPath>./output</outputPath>  
        <outputSite>http://{ip}:{port}/iserver/output/</outputSite>  
        <configFilePath>E:/supermap_packages/data/China_mvt/China.sci</configFilePath>
      </config>
    </provider> 

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

  • <outputPath>:图片的输出路径。
  • <outputSite>:访问图片的根目录 URI。
  • <configFilePath>:UGCV5(MVT) 缓存文件的路径(*sci)。

配置 Shapefile 地图服务提供者

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

    <provider class="com.supermap.services.providers.ShapefileMapProvider" enabled="true" name="shapefileMap-">
      <config class="com.supermap.services.providers.ShapefileMapProviderSetting">
        <outputPath>./output</outputPath>  
        <outputSite>http://{ip}:{port}/iserver/output/</outputSite>  
        <cacheDisabled>false</cacheDisabled>       
        <shpDir>E:/supermap/data/shp</filePath> 
        <styleFile>E:/data/styles/style.json</styleFile>
        <charset>UTF-8</charset>
      </config>
    </provider> 

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

  • <outputPath>:图片的输出路径。
  • <outputSite>:访问图片的根目录 URI。
  • <cacheDisabled>:是否禁用缓存。
  • <shpDir>:Shapefile 数据库文件所在目录。
  • <charset>:设置编码格式。
  • <styleFile>: 样式文件路径,文件格式为JSON,用于指定地图的样式。文件需遵循 Mapbox Style 规范。

配置 PostGIS 地图服务提供者

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

    <provider class="com.supermap.services.providers.PostgisMapProvider" enabled="true" name="map-postGIS">
      <config class="com.supermap.services.providers.PostgisMapProviderSetting"> 
        <outputPath>./output</outputPath>   
        <outputSite>http://{ip}:{port}/iserver/output/</outputSite>
        <cacheDisabled>false</cacheDisabled>
        <dbType>postgis</dbType>  
        <host>192.168.17.212</host>  
        <port>5432</port>  
        <database>postGIS</database>  
        <user>postgres</user>  
        <passwd>iserver</passwd> 
        <styleFile>E:/data/styles/style.json</styleFile>
      </config>
    </provider> 

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

  • <outputPath>:图片的输出路径。
  • <outputSite>:访问图片的根目录 URI。
  • <cacheDisabled>:是否禁用缓存。
  • <dbType>:数据库类型。
  • <host>:PostGIS 服务器的地址。
  • <port>:PostGIS 服务器的端口号。
  • <database>:用来存储待发布数据的数据库。
  • <username>:具有访问该数据库权限的用户名。
  • <password>:该用户的密码。
  • <styleFile>: 样式文件路径,文件格式为 JSON,用于指定地图的样式。文件需遵循 Mapbox Style 规范。

配置 GeoTrellis 地图服务提供者

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

   <provider class="com.supermap.services.providers.GeoTrellisMapProvider" enabled="true" name="test"> 
      <config class="com.supermap.services.providers.GeoTrellisMapProviderSetting">  
        <outputPath>../../webapps/iserver/output</outputPath>  
        <outputSite>http://{ip}:{port}/iserver/output/</outputSite> 
        <cacheDisabled>false</cacheDisabled>  
        <connInfo> 
            <engineType>HBASE</engineType>  
            <server>localhost</server>
            <dataBase>test</dataBase>   
        </connInfo>  
        <mapSettings> 
            <com.supermap.services.providers.GeotrellisMapSetting>  
                  <mapName>mayimap</mapName>
                  <layerIds>
                       <string>SV1-02_20190321</string>
                       <string>GF2_20160503</string>
                   </layerIds>
                  <enableMultiVersion>true</enableMultiVersion>
                  <versionNames>
                        <string>T2015</string>
                        <string>T2016</string>
                   </versionNames> 
            </com.supermap.services.providers.GeotrellisMapSetting>  
        </mapSettings>  
     </config> 
   </provider> 

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

  • <outputPath>:图片的输出路径。
  • <outputSite>:访问图片的根目录 URI。
  • <cacheDisabled>:是否禁用缓存。
  • <connInfo> :数据源配置信息。
  • <engineType>:数据源引擎类型,可设置为GEOTRELLISFILE、GEOTRELLISHDFS。
  • <server>:数据具体地址。如果engineType设置为GEOTRELLISFILE,则填写文件路径;如果engineType设置为GEOTRELLISHDFS,则填写HDFS文件路径,格式为,hdfs://{ip}:端口/test。
  • <mapSettings> :地图设定信息。当前仅支持已进行数据注册的数据源引擎。
  • <com.supermap.services.providers.GeotrellisMapSetting>:此节点为设置待发布的地图信息,并支持设定多个。
    • <mapName>:待发布的地图名称。
    • <enableMultiVersion>:是否开启的多版本能力,默认为false。
    • <layerIds> :图层名称。如果<enableMultiVersion>设定为ture时,支持设定多个图层名称。
    • <versionNames>:版本名称列表。仅<enableMultiVersion>设定为ture时,设定该参数,且设定个数必须与<layerIds>中设定的表名称个数相同,且按顺序一一对应。。

注:该提供者仅用于栅格、影像的数据。

配置复合瓦片地图服务提供者

复合瓦片地图服务提供者的配置在<provider>节点中进行。复合瓦片的合并模式有三种,默认模式、底图模式、自定义模式,此处以底图模式、自定义模式为例介绍地图服务提供者的配置。

底图模式:

<provider class="com.supermap.services.providers.MultiTilesProvider" enabled="true" name="multiTiles3"> 
  <config class="com.supermap.services.providers.MultiTilesProviderSetting"> 
   <name>ChinaTest</name>  
   <outputPath>./output</outputPath>  
   <outputSite>http://{ip}:{port}/iserver/output/</outputSite>  
   <tilesets> 
     <com.supermap.services.components.commontypes.TilesetSetting> 
      <tilesourceInfo class="com.supermap.services.tilesource.MongoDBTilesourceInfo"> 
        <datastoreType>TILES</datastoreType>  
        <type>MongoDB</type>  
        <serverAdresses> 
         <string>192.168.17.214:27011</string> 
        </serverAdresses>  
        <database>jingjin_transparent</database>  
        <username/>  
        <password/> 
      </tilesourceInfo>  
      <mapName>京津地区地图</mapName> 
      <tilesetName>1181328118</tilesetName> 
     </com.supermap.services.components.commontypes.TilesetSetting>  
   </tilesets>  
   <baseTileset>  
     <tilesourceInfo class="com.supermap.services.tilesource.SMTilesTileSourceInfo"> 
        <datastoreType>TILES</datastoreType>  
        <outputPath>E:/supermap/China_-1085299276_256X256_PNG.smtiles</outputPath>  
      </tilesourceInfo>  
      <mapName>China</mapName> 
      <tilesetName>smtiles_tileset_1181328119</tilesetName> 
   </baseTileset>  
   <combiningMode>BaseTileset</combiningMode> 
  </config> 
</provider>   

 

自定义模式:

<provider class="com.supermap.services.providers.MultiTilesProvider" enabled="true" name="multiTiles3"> 
  <config class="com.supermap.services.providers.MultiTilesProviderSetting"> 
   <name>ChinaTest</name>  
   <outputPath>./output</outputPath>  
   <outputSite>http://{ip}:{port}/iserver/output/</outputSite>  
   <tilesets> 
     <com.supermap.services.components.commontypes.TilesetSetting> 
      <tilesourceInfo class="com.supermap.services.tilesource.MongoDBTilesourceInfo"> 
        <datastoreType>TILES</datastoreType>  
        <type>MongoDB</type>  
        <serverAdresses> 
         <string>192.168.17.214:27011</string> 
        </serverAdresses>  
        <database>jingjin_transparent</database>  
        <username/>  
        <password/> 
      </tilesourceInfo>  
      <mapName>京津地区地图</mapName> 
     </com.supermap.services.components.commontypes.TilesetSetting>  
     <com.supermap.services.components.commontypes.TilesetSetting> 
      <tilesourceInfo class="com.supermap.services.tilesource.MongoDBTilesourceInfo"> 
        <datastoreType>TILES</datastoreType>  
        <type>MongoDB</type>  
        <serverAdresses> 
         <string>192.168.17.214:27011</string> 
        </serverAdresses>  
        <database>China4326</database>  
        <username/>  
        <password/> 
      </tilesourceInfo>  
      <mapName>China_4326</mapName> 
     </com.supermap.services.components.commontypes.TilesetSetting> 
   </tilesets>  
   <customScales> 
     <double>4.0E-9</double>  
     <double>8.0E-9</double>  
     <double>1.5625E-8</double>  
     <double>3.125E-8</double>  
     <double>6.25E-8</double>  
     <double>1.25E-7</double>  
     <double>2.5E-7</double>  
     <double>5.0E-7</double>  
     <double>1.0E-6</double> 
   </customScales>  
   <combiningMode>CustomScales</combiningMode> 
  </config> 
</provider>   

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

  • <name>:多个地图瓦片库聚合后发布成的地图服务的名称。
  • <outputPath>:图片的输出路径。
  • <outputSite>:访问图片的根目录 URI。
  • <baseTileset>:底图切片集设置。
  • <customScales> :自定义比例尺(0<比例尺<1),如“6.25E-8”。
  • <combiningMode>:合并模式,支持三种合并模式 "Default"(默认模式)、"CustomScales"(自定义模式)、"BaseTileset"(底图模式)。
  • <tilesets>:需要发布的切片集。
  • <com.supermap.services.components.commontypes.TilesetSetting>:此节点为设置待发布的切片的信息,并支持设定多个。具体包括如下参数:
  • <tilesourceInfo>:切片数据源信息,其中 class 标识的是复合瓦片服务提供者对应的配置类。
  • <datastoreType>:数据源类型,支持 TILES 类型。

文件型数据源配置参数:

  • <outputPath>:切片数据源存储路径。支持的瓦片格式包括 SMTiles、UGCV5 、SMTiles 等

数据库型数据源配置参数:

  • <type>:数据库类型。如 MongoDB。
  • <serverAdresses>:数据库的服务地址, MongoDB 数据库服务地址如“192.168.17.214:27017”。
  • <database>:数据库名称。
  • <username>:具有访问该数据库权限的用户名。
  • <password>:该用户的密码。
  • <mapName>:要发布的地图的名称。
  • <tilesetName>:发布的切片集的名称。

配置区块链地图服务提供者

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

    <provider name="map-BlockchainMap" enabled="true" class="com.supermap.services.providers.BlockchainMapProvider">
      <config class="com.supermap.services.providers.BlockchainMapProviderSetting"> 
        <outputPath>./output</outputPath>  
        <outputSite>http://{ip}:{port}/iserver/output/</outputSite>  
        <stylePath>D://workspace/style/donatedPeople@cache/styles/style.json</stylePath>  
        <cacheDisabled>false</cacheDisabled>  
        <notMergeAttributeFilters>false</notMergeAttributeFilters>
        <dbType>BCGIS</dbType>
        <alias>BlockchainMap</alias>
        <networkConfigFile>D://blockchain-network-supermapcc.yaml</networkConfigFile>
      </config>
    </provider> 

其中<provider>中的 class 标识的是区块链地图服务提供者的实现类,<config>中的 class 标识的是区块链数据历史服务提供者对应的配置类,即 BlockchainMapProviderSetting,<config>中的内容对应的是 BlockchainMapProviderSetting 对应的配置项:

  • <outputPath>:图片的输出路径。
  • <outputSite>:访问图片的根目录URI。
  • <stylePath>:地图样式文件路径,文件格式为 .json,文件需遵循 Mapbox Style 规范。
  • <cacheDisabled>:是否禁用缓存。
  • <notMergeAttributeFilters>:合并多个图层的bounds条件时,不合并图层中的属性过滤条件。
  • <dbType> :数据库类型。
  • <alias>:数据源别名。
  • <networkConfigFile>:区块链网络的 .yaml 配置文件在主机中的路径。

配置 MBTiles 地图服务提供者

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

<provider class="com.supermap.services.providers.MBTilesMapProvider" enabled="true" name="mbtiles-R">
        <config class="com.supermap.services.providers.MBTilesMapProviderSetting">
                <outputPath>./output</outputPath>
                <outputSite>http://{ip}:{port}/iserver/output/</outputSite>
                <filePath>D:/R_Boundry.mbtiles</filePath>
                <vectorFormat>false</vectorFormat>
        </config>
</provider>

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

  • <outputPath>:图片的输出路径。
  • <outputSite>:访问图片的根目录URI。
  • <filePath>:MBTiles 文件的路径。
  • <vectorFormat>:是否是矢量瓦片。