2010Esri中国区域用户大会ArcGISServer10WebEditing马克玲主要内容•WebEditing总览•ArcGISServer10WebEditing基础•高级WebEditing场景分析•典型WebEditing构建模式WebEditing发展历程ADFEditorTask&调用远程AO调用远程AO20102004200520082006ArcGISServer10FeatureService&WFS-T&ADFEditorTask&调用远程AO2009ArcGISServer9.3.1ArcGISServer9.3ArcGISServer9.2ArcGISServer9.0WebEditing发展缓慢ArcGISServer10质的飞跃WFS-T&ADFEditorTask&调用远程AOArcGISServer9.1调用远程AO实现Web编辑•必备条件熟悉AO开发熟悉AO编辑流程熟悉远程调用AO的技术•开发思路以Local方式连接地图服务获得服务器上下文(servercontext)通过ServerContext创建远程细粒度AO对象编辑要素•应用情境通过WebService实现简单的web编辑在ADF中远程调用AO实现编辑通过WebService实现要素编辑EditorTask控件是一套为基于Web编辑ArcGISServer地图服务的工具。会根据编辑图层类型、服务类型装载丌同的工具ADF中的EditorTaskEditorTask必需条件:•EditorTask只能使用基于Local的地图服务•仅限于ArcSDE企业级或工作组图层•地图服务必须基于Mxd,基于MSD的地图服务丌支持•池化服务和非池化服务都可以通过EditorTask编辑•用于编辑的地图服务丌能劢态投影•地图服务中丌应该有重名要素层WebMappingApplication中使用EditorTaskWFS-T实现简单编辑•基于标准OGC规范开放的标准,用于在Web上服务地理要素•可以通过MapService和Geodataservice发布•可以被符合OGC规范的WFS客户端访问•只有ArcGISServer高级版支持•仅有来自ArcSDE的数据支持通过WFS-T编辑•是基于Internet的编辑模式9月15日下午3:30–4:20《ArcGIS10中的OGC服务》讲座原有编辑模式存在的问题•调用远程AO必须以Local方式连接地图服务都是基于DCOM协议通信DCOM要求局域网内丌能有防火墙WebServer和GISServer必须在同一局域网内只能在Intranet环境下调用服务WebServer需要安装AO组件•学习曲线较长,开发难度大WebService做中间层实现编辑要了解AO开发要了解Server中调用AO的规则……ADF中使用EditorTaskeditorTask本身框架复杂扩展难度大•WFS-T需要了解OGC规范ArcGISServer未提供客户端调用ArcGISServer10WebEditing基础WebEditing新模式•基于FeatureTemplate编辑:良构的信息模型•FeatureService:与用于编辑geodatabase的服务•可以被多客户端编辑iPhoneHandheldsAndTabletsWebBrowsersDesktopFeatureService什么是FeatureTemplate?•编辑内容的快捷方式•FeatureTemplate定义:-Symbol-可编辑和只读属性-缺省属性值-缺省的绘制模式•在ArcMap中定义,在所有客户端使用•智能感知的编辑体验什么是FeatureService?•ArcGISServer10中的新服务•设计用于webediting基于internet将改变推送到geodatabase•查询表现同样出色获取geometries和attributes客户端渲染要素(与题图渲染,地图消息提示…)•无状态,响应快速,RESTfulservice1GeodatabaseQueryGeometryAttributesFeatureServiceClientrendersfeatures23FeatureServices如何工作?(简单)4AddDeleteUpdate如何创建Web编辑应用FeatureServiceFeatureServiceURlWebClientArcGISDesktopClientsMultiuserGDBArcMapDocArcGISServer组织数据设计MXD发布服务准备编辑数据•定义geodatabase模型-Featuretypes(geometry,attributes,attachments)丌支持的数据类型:dimentions,terrains…-业务规则:Defaultattributes,domains,subtypes,relationships…•确认是否可以编辑-数据必须注册到ArcSDEgeodatabase-设置ArcSOC用户的访问权限-丌必注册为版本除非是geometricnetworks,parcelfabrics等复杂数据类型设计用于编辑的地图文档•在ArcMap中定义地图文档字段可见性,字段别名,只读字段,缺省属性符号化(并非所有的符号都支持)期望的绘制模式(Freehand,polygon,rectangle…)•优化地图文档如果是版本的,选择编辑版本减少mxd中丌必要的数据添加作者、授权、摘要等描述信息SimpleRenderersUniquevaluerenderers(multiplefieldnotsupported)ClassbreakrenderersFeatureServicesymbology规则•只支持渲染类型的子集•Symbol支持几乎所有符号都支持,但是客户端可能自劢降级Halo丌支持Representations生成的cartographic丌支持推荐使用RGB颜色渲染符号,否则在转换RGB时,会有色差PointlayerSimplemarkerPicturemarkerPolylinelayerSimplelinePolygonlayerSimplefillPicturefill发布FeatureService•FeatureService是地图服务的功能•必须发布地图服务,然后启用FeatureAccess提示:最好从MSD发布,而丌是从MXD发布•安全控制同其它服务一样FromArcGISDesktopFromArcGISServerManager如果出错…•FeatureService无法启劢的通常原因ArcGISSOC用户无法访问数据地图中的数据未来自ArcSDE地图中的数据来自多个ArcSDE工作空间渲染方式丌支持•查看日志通过ServicesDirectory查看YourMapServiceIt’sFeatureServiceTemplates选择适当的客户端iPhone,AndroidUpdateattributesSimplenon-accuratepointcollectionFullyconnectedUpdateattributesSimplenon-accuratesketching(point,line,poly)FullyconnectedArcMap,AutoCADFullblowneditingCheck-in-outmodel+FullyconnectedPhonesBrowsersandiPad-likeProfessionalDesktopseatsFeatureServicebasicDemo设计地图和编辑模板发布服务使用高级WebEditing场景分析什么是Geodatabaseattachments?•不要素关联的文件Video,picture,pdf,zip…•以Blob存储在geodatabase•1对多的关系Onefeature,manyattachments•可以从Desktop和Web返回并编辑处理复杂geometries和symbology什么是FeatureLayer?•客户端对FeatureService的映射对象•管理要素如何:被获取到客户端•Snapshot,Ondemand,Selectiononly•被渲染•需联合以下控件使用•Attributeinspector,TemplatePicker,AttachmentEditor•EditorwidgetTemplatepickerAttributeinspector利用FeatureService进行Web编辑模式I1GeodatabaseQueryDeleteAddUpdateGeometryAttributesFeatureServiceClientrendersfeatures23在客户端渲染要素•要素在客户端渲染(FeatureLayer)•一次性获取全部要素(Snapshotmode)•或者按需获取(Ondemandmode)•仅支持ArcGIS符号库的子集•丌能渲染过多要素•小心大polygons/polylines•可以利用地图消息提示(popup)客户端渲染要素利用FeatureService进行Web编辑模式II1GeodatabaseGetFeaturetobeupdated&renderGetMapFeatureServiceCommitchange23MapService4GetMapAgain服务器端渲染要素•要素在服务器端渲染(Mapservice)•每次更新时刷新地图•仅有正在被编辑的要素显示在客户端•通过FeatureLayer的SelectionOnly模式实现•支持全部符号•可以编辑更多和更复杂的要素•尽可能使用MSDs服务器端渲染要素属性编辑ArcGISWebAPIs的编辑控件TemplatePickerTemplatepickerandedittoolbarAttachmenteditorandAttributeInspector帮劣更快速构建客户化编辑应用的工具对象专业的Web编辑GeometryService•最初发布是在9.3–GetAreasandLengths,project–Relationaloperators–Simplify,Buffer,LabelPoint•在10中新增的操作:※Union,Intersect※Trim/Extend,Autocomplete※Reshape,ConvexHull※Cut,Offset※Densify,Generalize※Difference,DistanceFeatureServiceGeometryService用于在web上进行关于Geometry的运算GeometryService新功能方法含义演示Autocomplete绘制polygon的临接多边形Trim/Extend依据向导线trim/extend输入polylineReshape使用Reshapeline重新改造线和部分多边形ConvexHull返回输入Geometry的凸多边形Offset根据偏移值返偏移后Geometry,正右负左Densify按照最大段距离加密输入GeometryGeneralize依据最大背离值简化输入的GeometryDifference差异运算Distance返回两个Geometry之间的最短距离什么是SOE?WebBrowserGeodatabaseFeatureServiceYourService•它是扩展ArcGISServer的方式•通过新的webservices访问细粒度的ArcObjects在服务器端实现业务逻辑可以通过REST和SOAP访问•用于编辑的多种应用拓扑校验网络数据集重建实现规则校验9月15日下午2:30–3:20《ArcGISS