




已阅读5页,还剩45页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Server Java培训练习手册,提纲,1 ArcGIS Server for the Java Platform开发介绍1.1 安装Eclipse插件1.2 用Manager创建web应用1.3 Eclipse向导创建web模板应用2 Web ADF的介绍2.1 用Web ADF的控件开发一个web应用,并设置控件的属性2.2 自定义context attribute3 开发自定义工具3.1 实现一个自定义command3.2 实现一个自定义tool3.3 实现一个自定义task,并用taskInfo类修改界面,1.1 安装Eclipse插件,1、下载并安装EclipseEclipse 3.3:/eclipseWTP 2.0:/webtools2、增加Eclipse的堆内存,修改eclipse.init文件,-showsplash org.eclipse.platform -vmargs -Dosgi.requiredJavaVersion=1.5 -Xms784m -Xmx1024m -XX:PermSize=256m -XX:MaxPermSize=256m -XX:+UseParallelGC,1.1 安装Eclipse插件,3、插件安装在主菜单中选择“Help-Software Updates-Find and Install”在“Install/Update”对话框中,选择“Search for new features to install”,点击“下一步”,1.1 安装Eclipse插件,3、插件安装ArcGIS插件有三个部分:文档、engine和server。你需要创建本地更新站点来安装每个插件。点击对话框中的“New Local Site”按钮。,1.1 安装Eclipse插件,3、插件安装通过文件导航定位到“%ARCGISHOME%/java/tools/eclipse_plugin/arcgis_update_siteserver”,把站点名称改为“ArcGIS Server Local Update Site”,完成以后点“OK”按钮确认。,1.1 安装Eclipse插件,3、插件安装在列表中选择“ArcGIS Server Local Update Site”,点击“Finish”按钮。接下来的对话框会显示可安装的要素。点击“Next”按钮接受安装许可 选择安装路径 选择“Install All” 重启Eclipse安装完成,1.2 用Manager创建web应用,用Manager创建一个简单的web应用,显示一个地图服务。在开始之前,确保有一个可用的地图服务正在运行。下面的例子使用的是demo/world服务。登录到Manager,点击左边导航栏的“Home”标签。在主页面上,点击“Create a web application”在应用页面,点击“Create New Web Application”链接,1.2 用Manager创建web应用,在Host对话框中,ArcGIS Server的主机名是不能修改的输入应用的名称以及描述信息,点击“Next”按钮,1.2 用Manager创建web应用,现在你可以选择web应用显示的地图服务。首先,需要连接到ArcGIS Server。点击“Add Layers”链接,双击第一项 “ArcGIS Server Local”,系统会列出所有可用的服务,选择demo/world地图服务,点击“Add”按钮添加。完成以后点“Close”按钮关闭选择框。“Next”按钮下一步,1.2 用Manager创建web应用,在这个页面中可以给web应用添加一些内置的task,这部分内容超出了本例的范围,详细的信息可以参考Manager帮助中“Configuring Tasks”的相关内容。不添加任何task,直接点击“Next”按钮进行下一步。,1.2 用Manager创建web应用,选择要显示的地图要素TOCOverview指北针比例尺(单位)copyright,1.2 用Manager创建web应用,设置标题、主题和页面链接设置完成以后,点击“Next”按钮。可以看到所有信息的汇总“Save Web App”保存,1.2 用Manager创建web应用,选中这个新创建的web应用,点击“Deploy”按钮部署部署完成以后会有一个URL地址可以访问新创建的web应用。点击该链接,1.2 用Manager创建web应用,1.3 Eclipse向导创建web模板应用,在开始之前,确保有一个可用的地图服务正在运行。下面的例子使用的是demo/world服务。打开Eclipse,在主菜单中选择“FileNewProject.”选择ESRI Server模板中的“ArcGIS Web Project”Next,1.3 Eclipse向导创建web模板应用,输入工程名“world”,点击“Next”,1.3 Eclipse向导创建web模板应用,双击“Add GIS Server”在弹出的对话框中选择“ArcGIS Server Local”,输入连接参数后点“OK”确认。,1.3 Eclipse向导创建web模板应用,在服务列表中选择你要添加的服务,添加到右边的选择框完成以后点“Finish”结束。,1.3 Eclipse向导创建web模板应用,右键点击创建的web工程,选择“Run As Run on Server”,在接下来的对话框中选择一个web容器运行该工程,1.3 Eclipse向导创建web模板应用,2.1 用Web ADF的控件开发一个web应用,在Eclipse下用“ArcGIS Web Samples”中的ArcGIS Server Simple模板创建一个web应用。,2.1 用Web ADF的控件开发一个web应用,运行该应用,看到如下的页面接下来的工作:增加overview和toc增加漫游、前一视图、后一视图工具改变工具栏的表现方式:竖排、纯文本、图片+文本,2.1 用Web ADF的控件开发一个web应用,增加Overview和Toc打开faces-config.xml,修改ags1的functionalities属性,增加agsToc的内容, functionalities overview#agsOverviewtoc#agsToc,新增内容,2.1 用Web ADF的控件开发一个web应用,增加Overview和Toc打开faces-config.xml,修改mapContext的attributes属性,增加toc和overview的内容,attributesoverview#overviewtoc#toc,新增内容,2.1 用Web ADF的控件开发一个web应用,增加Overview和Toc打开map.jsp,在页面上适当的位置添加和控件,2.1 用Web ADF的控件开发一个web应用,增加漫游、前一视图、后一视图工具打开faces-config.xml,修改mapContext的attributes属性,增加以下内容:,attributeshistory#extentHistory,新增内容,2.1 用Web ADF的控件开发一个web应用,增加漫游、前一视图、后一视图工具打开map.jsp,修改控件平移工具,2.1 用Web ADF的控件开发一个web应用,增加漫游、前一视图、后一视图工具前一视图工具,2.1 用Web ADF的控件开发一个web应用,增加漫游、前一视图、后一视图工具后一视图工具,2.1 用Web ADF的控件开发一个web应用,改变工具栏的表现方式orientation: VERTICAL, HORIZONTALtoolbarStyle: IMAGEONLY, TEXTONLY, IMAGEANDTEXTtextPosition: TOP, LEFT, RIGHT, BOTTOM,2.1 用Web ADF的控件开发一个web应用,2.2 自定义context attribute,三个主要接口WebContextInitialize在session级别,WebContext可以对它进行初始化和清除的操作。WebLifecycle处理每个请求时,WebContext都对其进行激活和钝化的操作。WebContextObserver当其他组件更新时,可以收到WebContext的通知当然,也可以不实现任何接口,只是作为POJO类交给WebContext维护。,2.2 自定义context attribute,设计场景使demo/world服务的第一个图层在比例尺小于1:70,000,000时不可见自定义一个java类,实现WebContextInitialize和WebLifecycle接口,public class MyCustomAttribute implements WebContextInitialize, WebLifecycleWebContext webContext;public void activate() public void passivate() public void destroy() public void init(WebContext wctx) this.webContext = wctx;,2.2 自定义context attribute,每次请求到来时,判断当前地图的比例尺,如果比例尺小于1:70,000,000,就把第一个图层设为不可见获取地图比例尺把图层设为不可见或不可见,public void activate() double currentScale = webContext.getWebMap().getMapScale();if(currentScale 70000000 )this.hideTheFirstLayer();elsethis.showTheFirstLayer();,2.2 自定义context attribute,把自定义context attribute添加到faces-config.xml,customAttr com.wj.sample.MyCustomAttributenoneattributescustomAttr#customAttrmap#map,3.1 实现一个自定义command,设计场景计算当前显示范围内第一个图层的要素个数。,public class FeatureCounter private WebContext context; private int countedFeatures; /计算得到的要素个数 public WebContext getWebContext() return context; public void setWebContext(WebContext context) this.context = context; public int getCountedFeatures() return countedFeatures; public void setCountedFeatures(int count) this.countedFeatures = count; ,3.1 实现一个自定义command,实现要素查询的逻辑,public String countFeaturesInFullExtent() WebExtent fullExtent = context.getWebMap().getCurrentExtent(); this.countFeatures(fullExtent); return null;private void countFeatures(WebExtent extent)EnvelopeN env = new EnvelopeN(extent.getMinX(), extent.getMinY(), extent.getMaxX(), extent.getMaxY(), null, null, null, null, null); this.countedFeatures = mapServer.queryFeatureCount(mapServer.getDefaultMapName(), layerId, spatialFilter);,3.1 实现一个自定义command,在faces-config.xml中添加配置信息在jsp页面中增加标签,.,featureCountercom.wj.sample.FeatureCounterrequestwebContext#mapContext,3.2 实现一个自定义tool,设计场景用户选择一个举行范围,计算该举行范围内第一个图层的要素个数在FeatureCounter类中添加以下方法:,public void countFeaturesInRectange(MapEvent event) /得到用户绘制的矩形范围 WebMap webMap = context.getWebMap(); WebExtent chosenExent = (WebExtent)event.getWebGeometry().toMapGeometry(webMap); this.countFeatures(chosenExent);,3.2 实现一个自定义tool,在map.jsp中添加标签,.,3.2 实现一个自定义tool,3.3 实现一个自定义task,前提:已经在Eclipse中新建了一个ArcGIS web工程新建一个普通的Java类:demo.GeorssTask编写taskInfo在配置文件中声明添加到web页面,3.3 实现一个自定义task,新建普通的Java类,添加以下功能代码添加一个参数factor参数用来地图缩放的比率 添加一个zoomByFactor方法按指定比率缩放地图添加一个zoomIn方法,实现自定义的拉框放大,3.3 实现一个自定义task,添加一个参数factor参数用来地图缩放的比率 普通的JavaBean,每个参数都有getter和setter方法,public class CustomTask private String factor;public String getFactor() return factor;public void setFactor(String factor) this.factor = factor;,3.3 实现一个自定义task,添加一个zoomByFactor方法按指定比率缩放地图参数是com.esri.adf.web.faces.event.TaskEvent,public void zoomByFactor(TaskEvent event)WebContext wctx = event.getWebContext();WebMap wMap = wctx.getWebMap();WebExtent ext = wMap.getCurrentExtent();ext.expand(Double.parseDouble(factor);wMap.setCurrentExtent(ext);wctx.refresh();,3.3 实现一个自定义task,添加一个zoomIn方法,实现自定义的拉框放大参数是com.esri.adf.web.faces.event.MapEvent,public void zoomIn(MapEvent event)WebContext wctx = event.getWebContext();WebMap wMap = wctx.getWebMap();WebExtent ext = (WebExtent)event.getWebGeometry().toMapGeometry(wMap);wMap.setCurrentExtent(ext);wctx.refresh();,3.3 实现一个自定义task,编写TaskInfo对task界面进行定制,汉化、布局、工具提示等 指定MapE
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 重庆市第110中学2026届数学七年级第一学期期末质量检测模拟试题含解析
- 海洋船舶环境污染治理方案
- 2026届河南省禹州市数学九年级第一学期期末综合测试模拟试题含解析
- 草牧场承包与农村基础设施建设合作合同
- 通信行业员工网络安全责任聘用合同
- 电力线路架设与运维服务合同
- 商铺租赁合同范本:涉足租赁双方知识产权保护协议
- 旅游旅行社劳动合同续订与导游服务质量协议变更合同
- 互联网金融服务担保合同模板(金融科技应用)
- 网络剧导演聘用合同及分成比例协议
- 提升心理抗压能力的技巧
- 中医医术确有专长人员(多年实践人员)医师资格考核申请表
- 低空飞行器设计
- 《穴位埋线疗法》课件
- 【大型集装箱船舶港口断缆事故预防应急处理及案例探析7500字(论文)】
- 发展汉语-初级读写-第一课-你好
- 律师事务所人事管理制度
- 脑梗塞并出血护理查房
- 三对三篮球赛记录表
- 中医基础之五行学说与五脏六腑
- 某水库调度规程完整
评论
0/150
提交评论