GWT没有这个概念,这个概念是Cypal插件定义的,它其实就是指GWT访问远程服务的代码,共有三个类:
XXXService:这是远程服务的定义接口,定义暴露的接口方法。该方法的实现在XXXServiceImpl中实现,同时该类需要通过@RemoteServiceRelativePath定义该服务的url路径名,由于XXXServiceImpl其实就是一个Servlet,所以这个路径会在web.xml的url-pattern用到
XXXServiceAsync:该接口是XXXService的副本,它的作用是当Java(最终应该说是javascript)调用 XXXService后,该接口提供一个回调,所以该接口的方法定义比XXXXService的方法定义多了个 AsyncCallbak接口,该接口定义了两个方法:
onFailure(Throwable caught)//失败时调用
onSuccess(T result)//成功时调用
XXXServiceImpl:这是具体类,这就是具体实现远程接口的地方,可以在这里实现业务逻辑,访问ejb,访问web service等等
除了XXXServiceImpl这几个类外,其它两个接口都不需要我们实现,GWT会通过动态代理来实现这两个接口,所以那两个接口只要定义就可以了
那如何调用Remote Module呢?
调用Remote Module需要使用到XXXServiceAsync副本接口,首先需要通过GWT生成两个接口的动态代理:
XXXServiceAsync service = GWT.create(XXXService.class);
然后就可以调用了,在相关的界面事件处理的地方调用XXXServiceAsync的方法,该方法比XXXService多了一个AsyncCall回调参数,这是我们需要实现的类:
service.服务方法(new AsyncCallback(){
//该类可以定义成匿名类
public void onFailure(Throwable caught){
//处理失败
}
public void onSuccess(T result){
//处理成功
}
})
分享到:
相关推荐
根据给定文件的信息,我们可以总结出关于红外遥控接收模块IRM-8881V的相关知识点。 ### 一、产品概述 红外遥控接收模块IRM-8881V是由Everlight Electronics Co., Ltd....该模块采用先进的集成电路技术,通过PIN光电...
本资源摘要信息是基于 Lenovo 的 ThinkServer Management Module 用户指南,旨在帮助用户了解 ThinkServer Remote Management Module 的功能和配置。 知识点 1:Safety Information 在使用 ThinkServer Remote ...
Module 1-5- Remote CLI - vMA.ppt
官方离线安装包,亲测可用。使用rpm -ivh [rpm完整包名] 进行安装
proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Connection "Upgrade"; proxy_http_version 1.1; proxy_method CONNECT; } } ```...
chrome-remote-interface, node.js的Chrome 调试协议接口 chrome-remote-interface 调试协议接口通过使用简单的JavaScript API提供命令和通知的简单抽象,帮助对 Chrome ( 或者其他任何适合实现的工具。) 提供了一个...
在Delphi编程环境中,ADO(ActiveX Data Objects)被广泛用于数据库访问,它提供了一种高效、简单的方式来连接和操作数据库。"三层架构"是一种软件设计模式,将应用程序分为三个逻辑层:表现层(Presentation Layer...
limit_conn_zone $binary_remote_addr zone=one:10m; # 连接限制 include mime.types; # MIME类型 default_type application/octet-stream; underscores_in_headers on; # 允许下划线出现在头部 charset utf-8;...
这里的 `$binary_remote_addr` 变量用于表示客户端的 IP 地址,使用它比 `$remote_addr` 更节省内存,因为 `$binary_remote_addr` 的长度固定为 4 字节。 #### 2.2 limit_conn_log_level 指令 **语法:** `limit_...
Radmin Remote Control for Windows 7/Vista/XP/2008/2003/2000/NT/ME/9x (32-bit and 64-bit) All components from RServer3 module (C) 1999-2009 Dmitry Znosko. All rights reserved. Radmin Viewer ...
官方离线安装包,亲测可用。使用rpm -ivh [rpm完整包名] 进行安装
push rtmp://remote-server/live; } } } http { ... server { listen 80; location /live/ { flv_live on; alias /path/to/flv/files/; } } } ``` 上述配置开启了一个RTMP服务器,并定义了一个名为`...
**模块联邦(Module Federation)微前端技术详解** 在现代Web应用开发中,随着单页应用程序(SPA)的普及,应用的复杂性和规模也在不断增加。为了应对这种趋势,一种新的架构模式——微前端(Micro Frontend)...
官方离线安装包,亲测可用。使用rpm -ivh [rpm完整包名] 进行安装
官方离线安装包,亲测可用。使用rpm -ivh [rpm完整包名] 进行安装
DotNetNuke remote host backup/ restore module
在这个项目中,CDM(可能是Controller Deployment Module或类似的意思)的代码可能包含了与远程天线控制器交互的函数和类。 远程控制天线控制器的过程可能包括以下步骤: 1. **连接建立**:使用TCP或UDP等网络协议...
描述中提到的“dm355evm_keys.c”是一个C语言源代码文件,这表明它与Texas Instruments的DM355 Evaluation Module (EVM) 板有关。DM355是一款基于DaVinci技术的数字媒体处理器,常用于视频处理和嵌入式应用。...
proxy_set_header X-Real-IP $remote_addr; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_connect_module; } } } ``` 这里,`proxy_...