`
czwangelo
  • 浏览: 72297 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

server simple例子 代码分析

阅读更多
<a:toolbar id="Toolbar" mapId="Map0" activeTool="ZoomIn">
   <a:tool id="ZoomIn" clientAction="EsriMapRectangle" 
   serverAction="com.esri.adf.web.faces.event.ZoomInToolAction" clientPostBack="true"/>
   <a:tool id="ZoomOut" clientAction="EsriMapRectangle" 
   serverAction="com.esri.adf.web.faces.event.ZoomOutToolAction" clientPostBack="true"/> 
   <a:command id="fullext" clientPostBack="true">
   <f:actionListener type="com.esri.adf.web.faces.event.ZoomFullExtentListener"/>
   </a:command>
</a:toolbar> 

 

<a:map id="Map0" value="#{mapContext.webMap}" width="400" height="400"  />

在这些代码中,我们看到有个clientAction属性,这是一些javascript脚本的语句,

打开js文件夹中的,esri-map.js中

function EsriMapRectangle(id, toolName, isMarkerTool) {
	this.inheritsFrom(new EsriMapToolItem(id, toolName, new EsriDrawRectangleAction(), isMarkerTool));
  var self = this;

  this.update = function() { self = this; }
	this.postAction = function(rect) {
    if (rect.width == 0 && rect.height == 0) return;

    self.update();
    var map = self.control;

    if (self.isMarker) map.graphics.drawRectangle(rect);
    else {
      if (self.showLoading) map.showLoading();
      rect = rect.offset(-map.viewBounds.left, -map.viewBounds.top);

      EsriUtils.addFormElement(map.formId, map.id, map.id);
      EsriUtils.addFormElement(map.formId, map.id + "_mode", self.id);
      EsriUtils.addFormElement(map.formId, map.id + "_minx", rect.left);
      EsriUtils.addFormElement(map.formId, map.id + "_miny", rect.top);
      EsriUtils.addFormElement(map.formId, map.id + "_maxx", rect.left + rect.width);
      EsriUtils.addFormElement(map.formId, map.id + "_maxy", rect.top + rect.height);
      if (self.clientPostBack) EsriUtils.addFormElement(map.formId, "doPostBack", "doPostBack");
      EsriUtils.submitForm(map.formId, self.clientPostBack, EsriControls.processPostBack);
    }
	}
}

 

而serverAction指的是服务器端的运行,比如ZoomOutToolAction。

该ZoomOutToolAction继承的是MapToolAction,必须实现execute(MapEvent event) 方法

分享到:
评论

相关推荐

    perl-HTTP-Server-Simple

    在这个例子中,我们创建了一个名为`MyServer`的新类,继承自`HTTP::Server::Simple::CGI`,然后重写了`handle_request`方法来返回一个简单的HTML响应。服务器会在8080端口监听并处理所有到达的请求。 该扩展包还...

    Soap—WebServer解析简单例子

    SOAP(Simple Object Access Protocol)是一种基于XML的协议,用于在Web服务中交换结构化和类型化信息。在本文中,我们将深入探讨SOAP以及如何在Web服务器上实现一个简单的SOAP服务,同时结合Android客户端进行调用...

    Simple-Windows-Socket-Server-Example.rar_simple_socket server

    从压缩包内的文件名“Simple Windows Socket Server Example.docx”来看,我们可以期待找到一个详细的文档,该文档可能包含了源代码解释、步骤指南、关键函数的解释,以及可能的使用示例。 在Socket编程中,我们...

    ESP32 simple_ota_example

    ESP32 simple_ota_example是基于ESP32微控制器的固件在线更新(Over-the-Air, OTA)示例项目,适用于Windows 10操作系统,并使用Visual Studio Code (VSCODE)作为集成开发环境,结合ESP-IDF工具链进行开发。...

    simple_server:带套接字的简单HTTP Server

    【标题】"simple_server:带套接字的简单HTTP Server" 涉及的是使用Python构建一个基础的HTTP服务器,这个服务器使用了套接字(socket)编程来处理客户端的HTTP请求。在计算机网络中,套接字是进程间通信(IPC)的一...

    php链接HIVE的例子代码

    标题"php链接HIVE的例子代码"所提及的任务就是通过PHP与Hive建立连接,并执行相关的数据操作。具体来说,这个例子将演示如何使用PHP客户端与Hive Server2(Hive的第二代网络服务接口)进行通信,这个过程通常涉及到...

    node-simple-server:基础节点服务器

    "node-simple-server"项目就是一个简单的示例,它展示了如何使用Node.js搭建一个基础的服务器。 Node.js是一个基于Chrome V8引擎的JavaScript运行环境。通过Node.js,开发者可以使用JavaScript编写服务器端程序,...

    WebService服务的安全控制程序例子源码[Security- Web services the secure ]

    总的来说,这个源码实例提供了学习和实践WebService安全控制的一个良好起点,通过对"Client"和"Server"代码的分析和调试,你可以更好地掌握如何在实际项目中实现这些安全措施,为你的Web服务构建坚固的安全屏障。

    Java.Web开发详解.书中例子的源代码

    源代码中,我们可能发现XML解析器的使用,例如DOM(Document Object Model)或SAX(Simple API for XML),以及XSLT转换规则的定义。 此外,我们还可能看到MVC(Model-View-Controller)设计模式的应用,这是Java ...

    Simple-TCP---Server.zip_SOCKET LABVIEW_labview socket_tcp_tcp la

    标题中的“Simple-TCP---Server.zip”表明这是一个关于TCP服务器的LabVIEW项目,而“SOCKET LABVIEW labview socket tcp tcp lab”进一步确认...通过分析和修改这个例子,他们可以进一步理解如何构建更复杂的网络应用。

    易语言使用ASP发信例程.zip易语言项目例子源码下载

    在本例程中,“易语言使用ASP发信例程.zip”是一个压缩包,其中包含了易语言项目的源代码,用于演示如何使用易语言与ASP(Active Server Pages)结合来发送电子邮件。 ASP是微软开发的一种服务器端脚本环境,常用于...

    工厂模式的具体例子,工厂模式的具体例子

    在这个例子中,`SimpleFactory`可能会包含类似 `createDatabaseConnection(String dbType)` 的方法,根据输入的数据库类型(如"oracle"或"sqlserver")创建相应的数据库连接对象。 接下来,`oracle`和`sqlserver`这...

    在Windows Server2003上有名的最好最简单的bugzilla配置方法

    在Windows Server 2003上配置Bugzilla的过程是一个涉及多个步骤的技术任务,主要包括安装必要的组件,如IIS、MySQL数据库以及ActivePerl。以下是对这个配置过程的详细说明: 首先,准备工作是安装基础环境。在...

    axis搭建webService的例子

    1. Axis Server:处理Web服务请求,解析SOAP消息,并调用相应的Java方法。 2. Axis Client:用于调用远程Web服务,生成客户端代理类。 3. Axis Codegen:自动生成服务端和客户端代码,使开发更便捷。 三、搭建Web...

    simple_node_server

    "simple_node_server"项目的主文件通常命名为`server.js`。在这个文件中,我们导入Node.js的http模块,它是用来创建HTTP服务器的基础。代码可能如下: ```javascript const http = require('http'); const ...

    用Indy创建收发电子邮件的例子

    这个例子中的文档可能详细地阐述了这些步骤,并提供了完整的代码示例。通过阅读文档,你可以进一步理解如何在Delphi的环境下使用Indy组件创建一个完整的电子邮件应用。记得根据你的实际需求和邮件服务器的配置来调整...

    PHP读取Excel后插入Sql server

    在IT行业中,将数据从Excel文件导入到SQL Server数据库是一项常见的任务,特别是在处理大量结构化数据时。在本场景中,我们使用PHP作为编程语言来完成这个操作。PHP的灵活性和广泛的应用使得它成为Web开发中的理想...

    webservice简单例子,Tomcat

    它支持SOAP(Simple Object Access Protocol)、WSDL(Web Services Description Language)和UDDI(Universal Description, Discovery, and Integration),这些都是构建Web服务的重要组件。 1. **SOAP**: SOAP是...

    Xfire Webservice的例子

    Xfire是Apache CXF项目的一个早期版本,它提供了SOAP(Simple Object Access Protocol)支持,用于在不同的系统之间交换数据。Xfire不仅支持WSDL(Web Services Description Language)定义服务接口,还支持JAXB...

    CoAP-simple-library

    例子包括一些Arduino的示例草图(/ examples /)。 coaptest.ino:简单的请求/响应示例。 coapserver.ino:服务器端点url回调示例。如何使用下载此源代码分支zip文件并将其解压缩到Arduino库目录或签出存储库。 这是...

Global site tag (gtag.js) - Google Analytics