注:arcgis server 版本为9.3,其他版本未试
arcgis server 中发布wms、wfs等很简单,只要在发布的mapService中那个功能中勾住相应的选项就完了,但是发布之后使用的时候会遇到一些问题,目前本人遇到以下问题,当时找了半天才找到原因,现在公布之,节约全人类的时间
========About WMS==========
WMS服务中图层名的变化
WMS服务发布后,请求时有个参数LAYERS,这个参数的值就是图层的名字,但是server93发布之后的图层名并不是mxd文档中所看到的图层名,而是被改过了,成了0、1、2、3这样的数字,所以你在访问的时候LAYERS参数要注意了。
查看这个0123可以在catalog里建一个wms服务器,然后就能看到图层名对应的数字了,这个改为数字大概是因为请求的图层多了会超过http的get请求提交数据所规定的256个字符吧
关于如何修改这个0123,我还不知道
========About WFS==========
【1】.点坐标表达的顺序问题(x,y)还是(y,x)
如果这里不注意的话可能出现访问成功但是得不到地理要素的问题
可以通过设置配置文件来修改,帮助文档中相关部分,看看就明白了:
Controlling the axis order
Features returned in some geographic coordinate systems (for example, WGS 84) have an axis order of lat, long (y,x) by default. This is in compliance with the WFS 1.1 specification. For example, a point may be returned from a getfeature request with its coordinates specified as follows:
<gml:Point>
1.Log on to the machine running ArcGIS server as an administrator.
2.Shut down ArcGIS Server.
3.Go to the location of the service configuration files. For example, if ArcGIS Server is installed in c:\arcgis, go to c:\arcgis\server\user\cfg.
4.Open the configuration file for your service (for example, myservice.cfg) in a text editor.
5.In the WFS section, add the following to the properties:
<AxisOrderWFS11>longlat</AxisOrderWFS11> For example:
<Extension>
<TypeName>WFSServer</TypeName>
<Enabled>true</Enabled>
<Properties>
<AxisOrderWFS11>longlat</AxisOrderWFS11>
<CustomGetCapabilities>false</CustomGetCapabilities>
<EnableTransactions>false</EnableTransactions>
<Name>wfs_WFSTest_ras</Name>
<OnlineResource>http://bobmk/arcgis/services/wfs/WFSTest_ras/MapServer/WFSServer</OnlineResource>
<AppSchemaURI>http://bobmk/arcgis/services/wfs/WFSTest_ras/MapServer/WFSServer</AppSchemaURI>
<AppSchemaPrefix>wfs_WFSTest_ras</AppSchemaPrefix>
</Properties>
<Info>
<WebEnabled>true</WebEnabled>
</Info>
</Extension>