宣翠仙
摘要:文章分析了基于Flex的WebGIS技术优势,在此基础上,设计并实现了基于Flex技术的商贸WebGIS系统,系统以rest为服务发布模式,建立在GeoDatabase空间数据模型之上。研究结果表明,为虚拟商贸WebGIS社区提供了新的解决方案。
关键词:RIA;WebGIS;FLEX;REST;商贸
中图分类号:TP202 文献标识码:A 文章编号:1009-3044(2014)28-6740-02
基于RIA技术的WebGIS系统,相比传统的WebGIS能提供更友好的图形显示与交互能力,满足用户多媒体化、全方位的GIS体验,是近些年WebGIS系統发展的新趋势。比较典型的RIA开发技术如Adobe公司的Flex、Microsoft公司的SilverLight、Sun公司的Ajax等。其中Flex技术具有跨平台特性,被Yahoo、Google、百渡、ERSI等公司的地图服务系统采用。该文以商贸系统为载体,探讨基于Flex技术的商贸WEBGIS系统的设计与实现。
1 Flex技术特点
Flex是Adobe公司提出的基于组件的开源框架,可用于开发多媒体界面Web应用程序。Flex的开发模型由 ActionScript 3、MXML语言及扩展类库组成,其中MXML可用于设计和配置Flex程序界面、编写表现层数据模型。经由Flex编译器编译成SWF格式,通过Flash Player支持不同系统和平台运行,为用户提供视频、声音、实时通话。由于Flash Player基于异步客户端-服务器通信模型,可将原本在服务器上执行的部分简单计算任务交由它完成,减少客户端与服务器的交互,提高系统运行效率。
2 基于REST的WEBGIS开发框架
传统WebGIS开发采用MVC三层开发框架,以服务端用.net /J2EE,ArcGIS Server为例,其开发框架如图1所示。这种使用RPC风格的架构,其紧密耦合和接口的复杂性使得用此框架开发的Web服务很难达到Web级别的可伸缩性。此外,由于此类服务的资源和调用方法封装于SOAP消息,无法从URL和HTTP上得到有用消息,且每个SOAP应用需要定义自己的接口,不利于地理数据服务服务的互操作。
REST(Representational State Transfer),即表述性状态转移,是一种基于HTTP协议面向资源的架构。每一个URL代表一个资源,而系统则由这些资源构成。REST通过定义Web服务应用程序编程接口,使用HTTP进行资源管理,相比SOAP及XML-RPC更加简洁高效。因此,Flex与REST技术结合是当前较热门的分布式系统解决方案之一。如ESRI公司于2008年底推出的ArcGIS Server REST API,提供了REST风格的开发接口。以自行开发的商贸系统为例,其开发框架如图2所示。
从图2可以看出,REST风格的开发框架比MVC结构要简洁,用户通过浏览器在后台用REST API与ArcGIS Server服务资源进行交互,以访问Web Services的方式调用ArcGIS Server服务资源,不需要SOAP工具包,方便互操作。
3 基于Flex的WEBGIS Rest商贸系统
3.1功能模块
基于Flex的WEBGIS Rest商贸系统采用ArcGIS平台开发,后台数据采用.net实现Web发布与操作。主要用于实现网上数字虚拟社区系统相近地域人员之间的主题式互动交流、社区电子地图的游览与查询、社区各类店铺的商贸往来,打造富媒体可视化状态下的仿三维虚拟社区系统,以营造良好的虚拟社区氛围。系统功能包括商城地图浏览、商铺查询、商铺门户、用户管理、社区论坛留言管理等模块。通过网络平台,用户可以通过地图浏览社区内的商铺、通过商铺浏览其产品说明及产品的展示、可以根据主题进行留言互动交流、可以浏览相近地区的地图。其中基本图形功能包括:地图无级缩放、图形平滑漫游、“鹰眼显示”、动态路名、量度尺、沿路跟踪、空间查询、图形和数据交换等。主要功能模块图如图3所示。
3.2效果实现
系统程序实现分两部分:服务器端运行Remoting Objects,提供Services给Flex客户端;Flex中运行ActionScripts 和MXML,实现数据展示与客户交互。数据部分,采用GeoDatabase空间数据模型:矢量数据部分通过投影变换转换为同一种地图投影;照片、栅格地图等栅格数据以集的形式存在于GeoDatabase中。各类统计信息、文本信息以数据表的形式存在GeoDatabase中。REST风格的Web服务发布步骤如下:首先针对涉及到的地图服务、地理处理服务创建所需要的GIS资源;然后利用ArcCatalog将资源发布为Web服务,以便被客户端应用程序远程调用。企业商铺地图操作界面如图4所示。
4 结束语
文章对基于Flex的WebGIS商贸系统进行了研究,提供了一个具有WebGIS基本操作、网络分析等功能、基于REST服务发布风格的WebGIS解决方案。 REST与FLEX结合的系统能为用户呈现更加丰富、体验性更强的用户界面,是基于RIA技术的WebGIS的发展趋势。
参考文献:
[1] 袁煜锋.基于Flex和REST的WebGIS研究[D].上海:华东师范大学,2013.
[2] 基于WEBGIS的分布交互仿真系统体系结构研究[J].计算机研究,2012(4).
[3] 刘俊.谭建军.邵长高.基于Flex的WebGIS框架设计与实现[J].计算机工程,2010(5).
[4] 张欧亚,许珂等.基于Flex的广州大学城交通服务WebGIS设计[J].测绘与空间地理信息,2012(10).