使用GWT开发AJAX应用程序

一、 引言

如果你是一个Java软件和Ajax开发者,那么,Google Web Toolkit(GWT)应该已经引起你的关注。

Google公司已经于2006年5月在Apache许可协议下发布了这种免费的开发工具包。GWT的设计目的是为了简化用Java语言开发Ajax应用程序。Google初始发行的beta版本可以适用于Windows和Linux平台,并许诺稍后要发行一个Mac OS X版本。

本文将探讨在Mac OS X上使用GWT和熟悉的Java工具,例如Apache Ant,Tomcat 5.0 servlet容器和IntelliJ IDEA集成开发环境开发一个简单的Ajax应用程序的完整过程。

注 本文假定读者具有一定的Java和Ant使用基础。

二、 与GWT一起使用Ant

我下载的是GWT的Linux beta版本,并选用Java开发应用程序,然后使用一个Ant构建文件进行编译,最后在一个Tomcat 5.0实例上发布该应用程序。注意,这个Ant文件运行的是GWT Java-to-JavaScript编译器。其实,这个“编译器”只是一个执行一个GWT Java类的命令行脚本,该Java类负责为应用程序编写JavaScript。

使用GWT beta包括两种开发方式:主机方式和web方式。

主机方式是使用一个嵌入式的GWT浏览器和中间开发步骤;在这个方式中,你的编译代码继续运行于一个Java虚拟机(JVM)中。然而,主机方式无法应用于我们这些使用Linux版本操作系统的Mac OS X用户。只有Google发行了一个Mac OS X版本,我们才可以使用主机方式。

三、 不同风格的Web开发

在创建远程过程调用(RPC)服务的同时,本文将详细讨论一些典型的GWT开发者可能面对的web开发有关的任务。RPC是一个软件模型的一部分,主要为使用面向服务的架构(SOA)的应用程序而设计。这些开发任务包括:

· 使用一个构建文件(构建运行GWT编译器,然后发布编译器的输出,并且把你的服务器端的Java类文件发布到一个servlet容器,例如Tomcat,Jetty或Resin)来自动化开发和发布步骤。

· 使用Firefox的DOM Inspector来观察由该GWT应用程序生成的HTML。

· 重新设置页面中的各部件而不必存取内在的HTML(既然你在使用GWT的Java API)。

· 确保HTML是有效的标记,例如,你的组织可能需要基于一个特别的XHTML文档类型。

四、 服务功能

首先,我将简短描述本文示例应用程序要创建的服务,设计这个示例是为了展示GWT使用的模型。

该应用程序在浏览器中显示一个表单,要求用户输入他们的姓名、年龄和原籍国家。当用户通过点按按钮提交表单时,该应用程序在一个文本域中显示一个服务器响应,而不必初始化一个页面刷新。图1显示了在Safari浏览器中该应用程序看上去的样子。

图1.一个由GWT生成的简单视图

例如,当用户保留一个文本框为空而点击OK,Submit按钮时将显示出图2所示结果。

图2:该应用程序用红色显示一条错误消息

时间: 2024-09-17 04:04:08

使用GWT开发AJAX应用程序的相关文章

GWT开发AJAX应用程序教程

一. 引言 如果你是一个Java软件和Ajax开发者,那么,Google Web Toolkit(GWT)应该已经引起你的关注. Google公司已经于2006年5月在Apache许可协议下发布了这种免费的开发工具包.GWT的设计目的是为了简化用Java语言开发Ajax应用程序.Google初始发行的beta版本可以适用于Windows和Linux平台,并许诺稍后要发行一个Mac OS X版本. 本文将探讨在Mac OS X上使用GWT和熟悉的Java工具,例如Apache Ant,Tomcat

使用Google Web Toolkit和JSON开发Ajax应用程序

Google Web Toolkit 和 JSON 简介 Google Web Toolkit(GWT)是一套用来开发 Ajax 程序的工具,它支持开发者使用 Java 代码来创建 Ajax 的应用程序. JSON (JavaScript Object Notation)是一种轻量级的数据交换格式.它是一种完全和语言无关的文本格式.同时由于 JSON 是 JavaScript 的对象文字符号的子集,所以在 Ajax 开发中,经常用来作为客户端和服务器端数据交换的标准格式. 本文将关注如何使用 G

像专业人员一样开发Ajax应用程序,第1部分

使用 Prototype JavaScript 库和 script.aculo.us 目前,Web 应用程序开发几乎等同于 Ajax 开发.Ajax 不再是在特殊情况下才添加到应用程序的补充物了.它现在已经成为 Web 开发不可或缺的一部分.对于某些人而 言,用 Ajax 增强应用程序曾经是一项极具挑战的任务.处理跨浏览器限制.编写大量复杂的 JavaScript 以及熟悉其中的数字编码,这些只不过是 Ajax 开发人员所面临 的挑战的一小部分.还好,目前已经有几种开源 JavaScript 库

像专业人员一样开发Ajax应用程序,第3部分

使用 DWR.Java 和 Dojo 工具箱集成 Java 和 JavaScript 您能很快地说出多少 Java Web 开发框架.库和工具箱?没错,数量太多,以至于很难弄清楚它们各自的功能以及哪个功能可以真正帮助您解决问题.但是,如 果您从事的是 Ajax 开发,那么您必须要知道这个库:Direct Web Remoting (DWR).它利用 Java 语言和 Java Web 技术大大地简化了 Ajax 开发,并为如何无缝地将 Ajax 集成到 Java Web 应用程序设立了标准.实际

像专业人员一样开发Ajax应用程序,第2部分

使用 Scriptaculous JavaScript 库和 script.aculo.us 本文是包含三部分的系列文章的第 2 部分,这个系列讨论可以用来创建 Ajax 应用程序的流行的 JavaScript 库.在 第 1 部分 中,学习了如何用 Prototype 库创建 一个用来管理歌曲的 Web 应用程序.在本文中,将使用 Scriptaculous 库构建一个用来管理照片的 Web 应用程序. 本文使用的是 Scriptaculous 的最新版本 1.8.1(参见 参考资料 中的链接

用事实说话!AJAX应用程序开发七宗罪

ajax|程序 AJAX bandwagon是个好去处.它带给你更快.更高效.更强动态的应用.但它也有自身的缺陷. 初一看,具备一些常识似乎就能避免这些缺陷,在一定程度上,的确如此.但从DHTML起源来看,AJAX应用程序充满了结构性差异.不论你在应用程序开发工作中掌握了多少常识,从别人犯的错误中吸取教训也是有好处的.我们称这些错误为"七宗死罪",但它们不能代表全部的错误. 事实上,在你犯这些致命过失之前,你可能首先犯了一些较轻的错误.因此我们从这里着手.这是每个人都可能犯的错误.这些

面向Java开发人员的Ajax:使用Google Web Toolkit开发Ajax

Ajax技术是当前开发web应用的非常热门的技术,也是Web 2.0的一个重要的组成部分.然而如果用传统的方式Javascript进行Ajax开发的话,就会使得应用程序非常难以进行调试,从而降低了生产效率.Google最近推出的GWT有望为我们解决这个难题,GWT是一个开发Ajax应用的框架,它使程序员用Java同时开发客户端和服务器端的代码.GWT的编译器会把用于开发客户端的Java代码转化成Javascript和Html,而程序员不用关心这一转换过程.这样程序员就可以在自己喜欢的Java I

使用Google Web Toolkit、Apache Derby和Eclipse构建Ajax应用程序 1

GWT 使得构建富 Ajax 浏览器客户机界面比构建传统 Java GUI 界面还要轻松.然而,即使是 GWT 这样出色的技术也无法独自构建出一个完整的 Web 应用程序.您还必须有一个服务器上的数据存储和某种类型的框架,以便将数据转换成 GWT 可从服务器传递给其客户的 Java 对象.在这一系列文章中,您将使用 Apache Derby 这个 100% 纯 Java 数据库,可将其嵌入与其余服务器端代码相同的 Java 虚拟机(JVM)之中. 本系列的第一篇文章主要探讨 GWT.在这里,您将

最优化跨浏览器Ajax应用程序

简介:如果所有的浏览器.计算机型号和 Ajax 应用程序的用户都一样,对开发人员来说,那真是妙 极了.但实际的情况是它们往往各不相同.在跨浏览器.计算机和单个用户设置方面开发行为可预知的 应用程序时,开发人员往往需要面对重重困难.当用户将 Ajax 应用程序从一个浏览器类型转换到另一 个浏览器类型时(尤其是在将 Ajax 应用程序传递给 Web 服务门户时),由于每个浏览器固有的限制, 无法保证拥有相同的浏览器体验.在本文中,作者 Judith Myerson 简单介绍了这些限制以及应该着重 避