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>:是否是矢量瓦片。