【环境】GeoServer 1.7.0 RC2,ArcSDE 9.3
【先决条件】安装ArcSDE SDK (java)
对于GeoServer 1.7以前的版本,官方文档支持ArcSDE9.2 sp2及以前版本,但我尝试连接9.3的SDE失败。GeoServer 1.7采用的是GeoTools 2.5,与之前的版本不同,因此我又尝试了这个版本+最新的SDE SDK,发布服务成功。
1.安装GeoServer、GeoServer ArcSDE 扩展及其依赖项
下载GeoServer:http://geoserver.org/display/GEOS/GeoServer+1.7.0-RC2 ,该页面也包含了ArcSDE Extension的下载链接。
首先安装GeoServer,安装完成以后,将ArcSDE Extension压缩包中的所有文件解压缩到GeoServer的lib目录:%GeoServer 1.7.0-RC2%webappsgeoserverWEB-INFlib。
由于ArcSDE扩展依赖ArcSDE SDK,因此还需要将%ArcGIS%ArcSDElib下的所有jar包复制到GeoServer的lib目录。
通过开始菜单启动GeoServer。
2.配置GeoServer连接ArcSDE
通过http://localhost:8080/geoserver 访问GeoServer Administrator。
首先进入“配置-数据-名称空间 ”,新建自己的名称空间,完成后点击左侧的“保存”。
进入“配置-数据-数据库”,点击“新建”,在这里需要新建一个SDE数据库连接。
进入“配置-数据-FeatureTypes”,点击“新建”,在这里通过一个SDE图层来发布一个FeatureType。这里发布了一个图层,在GeoServer中命名为“bj_road”。完成后点击左侧的“保存”、“应用”。
打开http://localhost:8080/geoserver/mapPreview.do ,查看当前发布的SDE图层,选择合适的方式预览。下图是上面发布的bj_road的SVG预览。
3.获得kml服务
GeoServer的kml服务地址如下:http://localhost:8080/geoserver/wms/kml_reflect?layers=<名称空间>:<图层别名>,比如上面发布的bj_road,它的kml地址就是http://localhost:8080/geoserver/wms/kml_reflect?layers=wuyf:bj_road ,将这个地址添加到Google Earth或者其它支持kml的客户端就可以对SDE图层数据进行查看了。
使用GeoServer发布ArcSDE 9.3数据
最新推荐文章于 2024-02-19 14:41:54 发布