通过 XML 文件配置服务接口

发送反馈


服务接口配置了在服务接口层支持的按不同服务规范发布成的网络服务,比如 REST 服务、WMS 服务、WFS 服务、WMTS 服务、WCS 服务、WPS 服务以及用户自定义类型的服务等。可以通过修改服务配置文件中的服务接口配置文件 iserver-services-interfaces.xml(参见iServer 配置文件说明)来修改服务中使用的接口。服务接口的配置是在<interface>节点中进行的,不同类型的服务接口有不同的配置项。关于不同类型接口配置的详细参数介绍,请参考通过服务管理器配置服务接口

 

接口配置文件结构

<interface>的 name 属性标识了该服务接口,它是必选参数,通过它可以访问具体类型的服务,请参见服务的 URI 设置

<interface>节点在配置文件中的结构如下所示:

<application>
                ...
                <interfaces>
                        ...
                        <interface>
                             ...
                        <interface/>
                </interfaces>
</application>

不同服务接口的类型通过定义类来区别,配置信息通过配置类来定义,详见表1_服务接口的实现与配置

表1 服务接口的实现与配置

基本类型 版本 服务接口实现类 服务接口配置类
REST
REST/JSR
ArcGIS REST1
Baidu REST1
Google REST1
OSMRestServlet1
TMSRestServlet1
-- com.supermap.services.rest.RestServlet
com.supermap.services.rest.JaxrsServletForJersey
com.supermap.services.rest.AGSRestServlet
com.supermap.services.rest.BaiduRestServlet
com.supermap.services.rest.GoogleRestServlet
com.supermap.services.rest.OSMRestServlet
com.supermap.services.rest.TMSRestServlet
 
 
com.supermap.services.rest.RestConfig
com.supermap.services.rest.JaxrsConfigForJersey
com.supermap.services.rest.AGSRestConfig
WMS 1.1.1
1.3.0
com.supermap.services.wms.WMSServlet com.supermap.services.wms.WMSConfig
WFS 1.0.0
2.0.0
com.supermap.services.wfs.WFSServlet com.supermap.services.wfs.WFSConfig
WCS 1.1.1
1.1.2
com.supermap.services.wcs.WCSServlet com.supermap.services.wcs.WCSConfig
WMTS 1.0.0 com.supermap.services.wmts.WMTSServlet com.supermap.services.wmts.WMTSConfig
WPS 1.0.0 com.supermap.services.wps.WPSServlet com.supermap.services.wps.WPSConfig

注1:在iServer中使用该接口,需购买服务分发扩展模块,iExpress 可直接使用。

配置 REST 接口

SuperMap iServer 提供了基于 Restlet 和 Jersey 的两种 REST 接口,分别对应两个接口实现类 RestServlet 和 JaxrsServletForJersey。

配置一个基于 Restlet 的 REST 接口如下所示:

<interface class="com.supermap.services.rest.RestServlet" name="rest"> 
        <config class="com.supermap.services.rest.RestConfig"> 
                <accessControlAllowOrigin>*</accessControlAllowOrigin> 
        </config> 
</interface> 

其中,<interface>节点的 class 属性标识接口类型,对应实现类 RestServlet ,<config>节点是该 REST 服务接口对应的配置项,即接口配置类RestConfig。主要参数说明:

配置一个基于 Jersey 的 REST 接口如下所示:

<interface class="com.supermap.services.rest.JaxrsServletForJersey" name="restjsr"> 
        <config class="com.supermap.services.rest.JaxrsConfigForJersey"> 
                <accessControlAllowOrigin>*</accessControlAllowOrigin> 
        </config> 
</interface> 

其中,<interface>节点的 class 属性标识接口类型,对应实现类 JaxrsServletForJersey,<config>节点是该 REST 服务接口对应的配置项,即接口配置类JaxrsConfigForJersey

配置一个 ArcGIS REST 接口如下所示:

<interface class="com.supermap.services.rest.AGSRestServlet" name="arcgisrest"> 
      <config class="com.supermap.services.rest.AGSRestConfig">   
        <accessControlAllowOrigin>*</accessControlAllowOrigin>
      </config> 
    </interface> 

其中,<interface>节点的 class 属性标识接口类型,对应实现类 AGSRestServlet,<config>节点是 ArcGIS  REST 服务接口对应的配置项,即接口配置类 AGSRestConfig。

配置一个Baidu REST接口如下所示:

    <interface class="com.supermap.services.rest.BaiduRestServlet" name="baidurest">
      <config class="com.supermap.services.rest.RestConfig">   
        <accessControlAllowOrigin>*</accessControlAllowOrigin>
      </config> 
    </interface> 

其中,<interface>节点的 class 属性标识接口类型,对应实现类BaiduRestServlet,<config>节点是 Baidu  REST 服务接口对应的配置项,即接口配置类 RestConfig

配置一个Google REST接口如下所示:

<interface class="com.supermap.services.rest.GoogleRestServlet" name="googlerest"> 
      <config class="com.supermap.services.rest.RestConfig">   
        <accessControlAllowOrigin>*</accessControlAllowOrigin>
      </config> 
    </interface>

其中,<interface>节点的 class 属性标识接口类型,对应实现类GoogleRestServlet,<config>节点是 Google  REST 服务接口对应的配置项,即接口配置类 RestConfig

配置一个OSM REST接口如下所示:

<interface class="com.supermap.services.rest.OSMRestServlet" name="osmrest"> 
      <config class="com.supermap.services.rest.RestConfig">   
        <accessControlAllowOrigin>*</accessControlAllowOrigin>
      </config> 
    </interface>

其中,<interface>节点的 class 属性标识接口类型,对应实现类OSMRestServlet,<config>节点是 OSM  REST 服务接口对应的配置项,即接口配置类 RestConfig

配置一个TMS REST接口如下所示:

<interface class="com.supermap.services.rest.TMSRestServlet" name="tmsrest"> 
      <config class="com.supermap.services.rest.RestConfig">   
        <accessControlAllowOrigin>*</accessControlAllowOrigin>
      </config> 
    </interface>

其中,<interface>节点的 class 属性标识接口类型,对应实现类TMSRestServlet,<config>节点是 TMS  REST 服务接口对应的配置项,即接口配置类 RestConfig

注:在iServer中使用ArcGIS、Baidu、Google、OSM、TMS REST服务接口,需购买服务分发扩展模块,iExpress 可直接使用。

 

配置 WMS 服务接口

SuperMap iServer 提供支持 WMS 1.1.1、1.3.0 标准的服务。配置一个 WMS 1.1.1 接口如下所示:

<interface name="wms111" class="com.supermap.services.wms.WMSServlet"> 
        <config class="com.supermap.services.wms.WMSConfig"> 
                <version>1.1.1</version>
                <sld>
                        <pointStyles/>
                        <lineStyles/>
                        <polygonStyles>
                                <string>./WEB-INF/config/region.sld</string>
                        </polygonStyles>
                        <textStyles/>
        </sld>
        </config> 
</interface> 

其中,<interface>节点的 class 属性标识接口类型,对应实现类 WMSServlet,<config>节点是该 WMS 服务接口对应的配置项,即接口配置类WMSConfig。主要配置参数如下:

 

配置 WFS 服务接口

SuperMap iServer 提供支持 WFS 1.0.0、2.0.0 标准的服务。配置一个 WFS 1.0.0 接口如下所示:

<interface class="com.supermap.services.wfs.WFSServlet" name="wfs100"> 
        <config class="com.supermap.services.wfs.WFSConfig"> 
                <namespaceConfig serialization="custom"> 
                        <unserializable-parents/>  
                        <map> 
                                <default> 
                                        <loadFactor>0.75</loadFactor>  
                                        <threshold>12</threshold> 
                                </default>  
                                <int>16</int>  
                                <int>0</int> 
                        </map> 
                </namespaceConfig>  
                <maxFeatures>0</maxFeatures> 
        </config> 
</interface> 

其中,<interface>节点的 class 属性标识接口类型,对应实现类 WFSServlet,<config>节点是该 WFS 服务接口对应的配置项,即接口配置类WFSConfig。主要配置参数如下:

 

配置 WMTS 服务接口

SuperMap iServer 提供支持 WMTS 1.0.0 标准的服务,同时提供了一个兼容《地理信息公共服务平台 电子地图数据规范》中地图分级标准的“wmts-china”接口实例,可用于对接天地图等国内地图服务。

配置一个 WMTS 1.0.0 接口如下所示:

<interface class="com.supermap.services.wmts.WMTSServlet" name="wmts100"> 
        <config class="com.supermap.services.wmts.WMTSConfig"> 
                <identification> 
                        <title>示例 WMTS 服务</title>  
                        <description>SuperMap iServer 6R 基于示范数据发布的 WMTS 服务</description>  
                        <keywords> 
                                <string>iServer 6R</string>  
                                <string>Sample Data</string> 
                        </keywords>  
                        <fees>none</fees>  
                        <accessConstraints>none</accessConstraints>  
                        <serviceType>OGC WMTS</serviceType>  
                        <serviceTypeVersion>1.0.0</serviceTypeVersion> 
                </identification>  
                <provider> 
                        <providerName>北京超图软件股份有限公司</providerName>  
                        <providerSite>http://www.supermap.com.cn</providerSite>  
                        <serviceContact> 
                                <individualName>联系人姓名</individualName>  
                                <positionName>联系人职位</positionName>  
                                <phoneNumber>+86-10-59896655</phoneNumber>  
                                <faxNumber>+86-10-59896666</faxNumber>  
                                <deliveryPoint>北京市朝阳区酒仙桥北路甲10号院电子城 IT 产业园107号楼6层北京超图软件股份有限公司</deliveryPoint>  
                                <addressCity>北京</addressCity>  
                                <addressAdministrativeArea>北京</addressAdministrativeArea>  
                                <addressPostalCode>100015</addressPostalCode>  
                                <addressCountry>中国</addressCountry>  
                                <addressElectronicMailAddress>support@supermap.com</addressElectronicMailAddress> 
                        </serviceContact> 
                </provider>  
                <tileMatrixSets> 
                        <com.supermap.services.wmts.TileMatrixSet> 
                                <wellKnownScaleSet>Custom</wellKnownScaleSet>  
                                <scales/>  
                                <dpi>90.7142857142857</dpi>  
                                <tileWidth>256</tileWidth>  
                                <tileHeight>256</tileHeight> 
                        </com.supermap.services.wmts.TileMatrixSet>  
                        <com.supermap.services.wmts.TileMatrixSet> 
                                <wellKnownScaleSet>GlobalCRS84Scale</wellKnownScaleSet> 
                        </com.supermap.services.wmts.TileMatrixSet>  
                        <com.supermap.services.wmts.TileMatrixSet> 
                                <wellKnownScaleSet>GoogleMapsCompatible</wellKnownScaleSet> 
                        </com.supermap.services.wmts.TileMatrixSet> 
                </tileMatrixSets> 
        </config> 
</interface> 

其中,<interface>节点的 class 属性标识接口类型,对应实现类 WMTSServlet,<config>节点是该 WMTS 服务接口对应的配置项,即接口配置类WMTSConfig。主要配置参数如下:

 

“wmts-china”接口配置信息如下所示:

<interface class="com.supermap.services.wmts.WMTSServlet" name="wmts-china"> 
        <config class="com.supermap.services.wmts.WMTSConfig"> 
                <identification/>   
                <provider/>    
                <tileMatrixSets> 
                        <com.supermap.services.wmts.TileMatrixSet> 
                                <wellKnownScaleSet>ChinaPublicServices</wellKnownScaleSet> 
                        </com.supermap.services.wmts.TileMatrixSet> 
                </tileMatrixSets> 
        </config> 
</interface>

其中,<wellKnownScaleSet>参数指定了使用符合《地理信息公共服务平台 电子地图数据规范》中地图分级标准的“ChinaPublicServices”比例尺集。

配置 WCS 服务接口

SuperMap iServer 提供支持 WCS 1.1.1、1.1.2 标准的服务。配置一个 WCS 1.1.1接口如下所示:

<interface class="com.supermap.services.wcs.WCSServlet" name="wcs111"> 
        <config class="com.supermap.services.wcs.WCSConfig"> 
                <version>1.1.1</version>  
                <identification> 
                        <title>示例 WCS 服务</title>  
                        <description>SuperMap iServer 6R 基于示范数据发布的 WCS 服务</description>  
                        <keywords> 
                                <string>iServer 6R</string>  
                                <string>Sample Data</string> 
                        </keywords>  
                        <fees>none</fees>  
                        <accessConstraints>none</accessConstraints>  
                        <serviceType>OGC WCS</serviceType>  
                        <serviceTypeVersion>1.1.1</serviceTypeVersion> 
                </identification>  
                <provider> 
                        <providerName>北京超图软件股份有限公司</providerName>  
                        <providerSite>http://www.supermap.com.cn</providerSite>  
                        <serviceContact> 
                                <individualName>联系人姓名</individualName>  
                                <positionName>联系人职位</positionName>  
                                <phoneNumber>+86-10-59896655</phoneNumber>  
                                <faxNumber>+86-10-59896666</faxNumber>  
                                <deliveryPoint>北京市朝阳区酒仙桥北路甲10号院电子城 IT 产业园107号楼6层北京超图软件股份有限公司</deliveryPoint>  
                                <addressCity>北京</addressCity>  
                                <addressAdministrativeArea>北京</addressAdministrativeArea>  
                                <addressPostalCode>100015</addressPostalCode>  
                                <addressCountry>中国</addressCountry>  
                                <addressElectronicMailAddress>support@supermap.com</addressElectronicMailAddress> 
                        </serviceContact> 
                </provider> 
        </config> 
</interface>

其中,<interface>节点的 class 属性标识接口类型,对应实现类 WMTSServlet,<config>节点是该 WCS 服务接口对应的配置项,即接口配置类WCSConfig。主要配置参数如下:

自定义接口

自定义接口类型也可以在 XML 文件中进行,添加一个自定义接口类型的示例如下:

<interface-type configClass="com.supermap.services.sm.SMConfig">
   com.supermap.services.sm.SMServlet
</interface-type> 

其中 com.supermap.services.sm.SMServlet 是自定义的接口类型的实现类,com.supermap.services.sm.SMConfig  是自定义的接口类型的配置类。

<interface-type>节点在配置文件中的结构如下所示:

<server>
     <management>
              …
         <interface-types>
                  …
               <interface-type >
                      …
               </interface-type> 
         </interface-types>
      </management>
</server>